Blue Iris 摄像头软件
无法在 C:\Program Files\CodeProject\AI\modules\ObjectDetectionYolo\assets\yolov5m.pt 加载模型
此问题来自 CodeProject.AI 服务器论坛。在此帖子中,用户在其 CodeProject.AI 服务器控制台上遇到了以下错误。
1:08:29 PM: Object Detection (YOLO): Unable to load model at C:\Program Files\CodeProject\AI\modules\ObjectDetectionYolo\assets\yolov5m.pt (CUDA error: no kernel image is available for execution on the device
1:08:29 PM: Object Detection (YOLO): Unable to create YOLO detector for model yolov5m
在这种情况下,用户使用的是 NVIDIA GeForce GTX 660,驱动版本为 30.0.14.73481。该显卡的计算能力为 3.0,在消息发布时低于 CodeProject.AI 服务器支持的水平。但是,该用户还尝试使用 YOLO 检测,这仅适用于自定义模型。解决此问题的方法是转到 CodeProject.AI 服务器仪表板,通过单击仪表板上“对象检测 (YOLO)”旁边的三个点,选择“停止”,然后转到“对象检测 (.NET)”,单击三个点并选择“启动”。
CodeProject.AI 服务器日志显示,在没有运动检测的情况下,每分钟或更短时间就会有请求
此问题也来自 CodeProject.AI 服务器论坛。在这种情况下,用户在 CodeProject.AI 服务器日志中看到,在没有运动检测的情况下,每分钟或更短时间就会出现请求。
在 Blue Iris 中,相机设置面板的“AI”选项卡中有一个名为“检测/忽略静态对象”的选项,用于 Blue Iris 检测静态对象。如果勾选了此框,CodeProject.AI 服务器日志中将出现持续的请求流,因为 Blue Iris 会不断检测静态对象。取消勾选“检测/忽略静态对象”框并点击“确定”即可解决此问题。
浏览器无法打开端口 321678
在 CodeProject.AI 服务器论坛的此问题中,用户无法访问 https://:32168,也无法在浏览器中启动 CodeProject.AI 服务器。
为了解决此问题,有用户建议使用 netstat 检查该端口是否正在监听。用户使用的是 Windows。要执行此操作,请按键盘上的 **Win + R** 键打开“运行”窗口,然后键入 `cmd` 打开 CMD 提示符。从那里,键入 `netstat -ano -p tcp`。这将打开一个所有端口的列表,并指示哪些端口正在监听。
对于该用户,端口 32168 完全没有出现在列表中。解决方法是转到 Windows 服务并启动或重新启动 CodeProject.AI 服务器。为此,请按键盘上的 **Win + R** 键打开“运行”窗口,然后键入 `services.msc`。这将打开 Windows 服务。向下滚动到 CodeProject.AI 服务器并点击“启动服务”按钮。然后 CodeProject.AI 服务器即可成功启动。
CodeProject.AI 服务器和 Python 占用大量系统资源
此问题来自 Blue Iris 用户群 Facebook(注意:这是一个私人群组)。该用户报告称其 CPU 系统资源占用了 20%。
他们提供了 CodeProject.AI 服务器仪表板的截图,并且他们同时运行了“对象检测 (.NET)”和“对象检测 (YOLO)”。这两个模块并非设计为同时使用。解决方案是简单地关闭“对象检测 (YOLO)”。转到 CodeProject.AI 服务器仪表板,单击仪表板上其旁边的三个点,然后选择“停止”。
已确认但未检测到任何内容
此问题来自 Blue Iris 论坛。在这种情况下,Blue Iris 检测到运动但未识别出任何内容。Blue Iris 将其记录为“已确认”,但根据 CodeProject.AI 服务器的说法,未找到任何内容。用户想知道为什么 CodeProject.AI 服务器在未找到任何内容时不取消。
解决方案来自 ipcamtalk 论坛。在相机的全局“AI”设置选项卡中,有一个“取消”字段。在“取消”框中使用“未找到:0”可以消除(绿色)“未找到”在已确认警报列表中的显示。这会强制 AI 搜索警报中的所有图像以选择最佳图像。
Docker 容器中的 CodeProject.AI 服务器无响应
在此设置中,用户在 Docker 容器中运行 CodeProject.AI。CodeProject.AI 加载,可以访问 Web 界面,可以 ping Blue Iris 服务器,但 Explorer 和 Blue Iris 中的 CodeProject.AI 在检测请求时会超时,并且不会生成任何日志。
以下是一些尝试的方法:
是否有任何防火墙规则阻止向 CodeProject.AI 服务器发送 POST 请求?您显然可以进行 GET 调用以查看 UI 和获取更新。
- 如果您看到一组不错的日志,则表示后端模块可以联系前端服务器。
- 如果您能看到任何日志,则表示您运行 Explorer 的机器可以访问 CodeProject.AI 机器。
- 将日志详细信息滑块一直向右移动以显示“跟踪”。如果您看到任何“请求排队处理”之类的消息,则表示请求已到达模块。
- 如果您看到超时,则表示模块在返回值方面遇到问题,或者模块只是超时了。仪表板是否显示对象检测模块正在运行(绿色条)?
- 如果到达此阶段,请尝试停止一个对象检测模块并切换到另一个(例如,尝试 .NET 而不是 Python,反之亦然)。
如何解决 500 错误?
在使用 CodeProject.AI 服务器 2.1.6 时,许多 Blue Iris 用户报告在他们的 Blue Iris 日志中收到 Error 500。
简而言之:尝试最新的 Blue Iris 版本,版本 5.7.5.6。应该可以解决问题。
详细版本:500 错误问题与 Blue Iris 处理面部处理请求和响应的方式有关。这并不是一个“错误”,而是 Blue Iris 在没有可检测到的面部时将图像传递给面部识别,CodeProject.AI 因此返回 success = false(和 code = 500)。调用已发出,图像已处理,但由于没有可识别的面部,因此识别处理失败。
纯粹是关于什么构成成功和失败的问题。
在比 Blue Iris 不同的系统上运行 CodeProject.AI
以下是如何在不同于 Blue Iris 的系统上运行 CodeProject.AI 服务器并访问其 GPU 的示例。在此示例中,CodeProject.AI 在 Linux 系统上的 Docker 容器中运行。
-
在 Linux 系统上安装所有 CodeProject.AI 服务器的先决条件。
-
下载 Docker 镜像
-
运行该 Docker 镜像,运行 CPAI 仪表板和 explorer(localhost:32168),确保一切正常且 GPU 正在使用。
-
重新启动 Blue Iris 系统。在 AI 选项卡上,指向 Linux 系统上的 IP/端口地址。
如果 CodeProject.AI 系统速度较慢,请先启动它。不要从 Blue Iris 启动。
使用 Coral 和 Blue Iris 检测速度变慢
如果您遇到的检测时间比预期的慢,并且您拥有不错的系统并带有 Coral USB,您可能会期望看到低于 250 毫秒的检测。如果您看到更长的检测时间,Blue Iris 中有一些设置可以尝试。
在主“AI”设置中,“默认对象检测”字段,将模型大小更改为“小”。原因在于,Small 是最快的模型。
另一件事是,在相机设置中,在“人工智能”选项卡下,确保“如果可用,则使用主码流”未选中。选中此项会减慢检测速度,但不会提高准确性。