65.9K
CodeProject 正在变化。 阅读更多。
Home

如何在 Windows 上使用 Wyze 摄像头设置 Blue Iris 和 CodeProject.AI 服务器

starIconstarIconstarIconstarIconstarIcon

5.00/5 (5投票s)

2022 年 10 月 28 日

CPOL

18分钟阅读

viewsIcon

59336

在本文中,我将引导您使用 Wyze Cam v3 设置 CodeProject.AI 服务器和 Blue Iris。

我一直对玩人工智能 (AI) 感兴趣,并决定从小目标检测开始。所以我买了一个 Wyze 摄像头,下载了 Blue Iris 和 CodeProject.AI Server。在朋友的帮助下,我成功地设置了它们,但在各种论坛上看到很多人在寻求关于此过程多个部分的各种帮助。在本文中,我将一步一步地指导您安装 CodeProject.AI Server、安装和设置 Blue Iris、设置 Wyze 摄像头,以及使用所有这些来检测目标。

您需要的东西

我以为我只需要一个 Wyze 摄像头,但事实并非如此。您家中可能已经有一些东西,但我没有。以下是您需要的所有物品清单:

  • 一个 Wyze 摄像头 - 我选择的是 Wyze Cam v3,我在亚马逊上花了 34 美元。
  • 一张 microSD 存储卡 - 您可能有一个摄像头带有一张,但我没有。我在亚马逊上花了 9 美元。
  • 一个 microSD 读卡器 - 大多数 microSD 卡都配有适配器,但您还需要一个 microSD 读卡器,因为您需要向其中写入数据。我在亚马逊上花了 8 美元。

安装 CodeProject.AI 服务器

第一步是安装 CodeProject.AI Server。我正在安装版本 1.6.7.0,因此如果您使用的是不同版本,可能会遇到一些差异。

前往 codeproject.com,然后在主页上,点击 CodeProject.AI 横幅上的“下载”链接,该链接会转到 最新版本下载页面

该页面会自动下载一个 zip 文件。我安装了 WinZip(因为我讨厌自己),但您可以使用 PeaZip 或任何您喜欢的压缩软件。在 Winzip 中,双击 *CodeProject.AI.Server-1.6.7.0.exe* 并开始安装过程。

确保选中“我同意许可条款和条件”复选框,然后点击“安装”。

一个 CodeProject.AI Server Setup 窗口弹出,运行几分钟。CodeProject.AI Server 旨在提供开箱即用的解决方案,因此它会安装您所需的所有 Python 库和检测模块。这非常有用。很难知道需要哪些 Python 库,并且花费大量时间搜索训练模型。事实上,前几天我尝试安装 Python 来运行 pip 命令,但未能成功。那是另一篇文章要讲的内容。

CodeProject.AI Server 安装了许多 Python 脚本。不要担心这些。尽管我已经安装了好几次 CodeProject.AI Server,但有一次在安装过程中点击了其中一个脚本,按 Enter 键,进度条就卡住了。出于迷信,我说,不要触摸这些框,让它们自己安装。

设置窗口以绿色加载条显示其进度。然后,当所有操作完成后,会弹出一个“安装成功完成”窗口。点击“关闭”。

搞定!CodeProject.AI Server 已安装。

安装 Blue Iris

现在我们需要一些视频摄像头软件。CodeProject.AI Server 内置于 Blue Iris 中,因此请访问 blueirissoftware.com

如果您使用此软件超过 15 天,则需要许可证。目前,我使用的是试用版。撰写本文时,当前版本是 5 版,所以我正在安装它。如果您使用的是不同版本,您的体验可能会有所不同。

导航到 下载选项卡,然后点击“下载 V5”,这将下载 *blueiris.exe*。从这里,双击 *blueiris.exe* 开始安装过程,这将启动设置向导。

点击框以接受许可协议的条款,然后点击“下一步”。

您可以将 Blue Iris 安装在您想要的任何驱动器上。然后点击“下一步”,然后点击“安装”。

Blue Iris 安装完成后,您可以选择启动它和自述文件。我只想启动 Blue Iris,所以我不勾选自述文件框,然后点击“完成”。

此激活窗口显示免费试用还剩多少天。我显示 8 天,因为我七天前安装了它。我稍后会购买许可证。可能是 Lite 版,售价 34.95 美元,支持一个摄像头。

现在,点击“演示”启动 Blue Iris。

由于 CodeProject.AI Server 已集成到 Blue Iris 中,如果您没有安装 CodeProject.AI Server,您会看到一个提示,询问您是否要安装 CodeProject.AI Server 进行 AI 警报确认。如果您点击“”,它将带您进入 CodeProject.AI Server 的最新下载页面。我们已经下载并安装了 CodeProject.AI Server,所以我们不会看到此对话框。

现在,通过点击左上角的齿轮图标,进入 **Blue Iris 设置**。

然后导航到 **AI** 选项卡。

目前,您可以使用端口 5000 上的 CodeProject.AI Server,但将来此端口将被弃用,因此请将端口更改为 32168,并确保选中“在 IP/端口上使用 AI 服务器”复选框。然后点击“确定”。

现在我们的视频摄像头软件和 AI 检测软件已设置并协同工作,让我们来设置 Wyze 摄像头。

设置您的 Wyze 摄像头

我购买了 Wyze Cam v3,因为它是最便宜的。我 在亚马逊上购买了我的,但我相信您可以在其他零售商那里购买,价格可能更便宜。

根据摄像头随附的快速入门指南,第一步是在智能手机上下载 Wyze 应用程序。我使用的是 Android 手机,所以对我来说,这是从 Play 商店下载。

该应用程序要求您登录或创建帐户。我没有帐户,所以点击“创建帐户”,然后输入我的电子邮件、密码,同意条款和条件,并输入发送到我的电子邮件的验证码。接下来是输入手机号码并设置双因素身份验证的选项。

接下来,将 micro USB 数据线插入 Wyze 摄像头的背面,将 USB 数据线插入适配器,然后将适配器插入电源条。

一旦 Wyze 摄像头上的状态指示灯闪烁红色,摄像头就准备就绪了。

然后将摄像头倒置,打开支架以访问 **SETUP** 按钮。按住 **SETUP** 按钮直到语音提示“Ready to connect”。摄像头会一直重复“ready to connect”,直到设备实际配对,这有点令人恼火。

接下来,回到 Wyze 应用程序并点击“新设备”。然后从“类别”菜单中,选择“摄像头 > Wyze Cam v3”。

该应用程序提示您将 Wyze Cam v3 插入电源插座(我已经完成了),然后勾选“我听到了‘Ready to connect’”的复选框。

Wyze 应用程序需要启用位置服务,因此在此阶段,当它要求选择您的 WiFi 网络时,会弹出一个权限窗口,以便您启用位置。启用位置会自动选择您的 WiFi 网络名称,之后您可以输入 WiFi 密码。

接下来,将 Wyze 摄像头对准您的应用程序屏幕。即使有图示,我一开始也对此感到困惑,并试图让我的手机扫描 Wyze 摄像头背面的二维码。不要那样做。将摄像头对准应用程序屏幕后,设备即可连接,您可以为其命名。

我称我的摄像头为“Eye Spy”。

在下一步中,应用程序会询问您将如何使用该设备。没有 AI 检测选项,所以我选择了“其他”。

Wyze 应用程序提供名为 Cam Plus 的订阅服务。我尝试在 FireFox 中查找他们的主页,它导致 FireFox 崩溃了两次,所以我不会在此处链接。总而言之,Cam Plus 提供诸如人物检测、包裹检测、车辆检测和宠物检测等高级服务,每台摄像头的月费为 1.67 美元/月。但基本计划是免费的,并且是使用 Wyze 摄像头所需的一切。

Wyze 应用程序随后询问您是否要与家人和朋友共享设备。我不想这样做,因此选择“稍后”。

接下来会弹出安装新固件的提示。我们实际上需要使用一个“已弃用”的固件,所以点击“取消”。

Wyze 应用程序随后会运行一系列快速启动按钮,包括 HD、声音、讲话、录制和相册按钮。它还提供“捏合缩放”功能,因此您可以放大摄像头看到的内容。

完成!Wyze 摄像头已在 Wyze 应用程序中设置好。

现在 Wyze 摄像头正在工作,但固件不适合我们的目的。似乎 Wyze 曾提供过 RTSP(实时流协议)功能,但后来已将其移除。但是,固件仍可在网上找到。您可以在此处下载 Wyze Cam v3 的固件(并且为了万无一失,我已包含 Wyze Cam v2 和 Wyze Cam Pan 的固件链接)

这就是您需要 microSD 和 microSD 读卡器的地方。要更新 Wyze Cam v3 上的固件,您必须将加载了固件的 microSD 卡插入摄像头本身。Wyze 的支持站点有一篇 文章 详细介绍了这一点,但我会一步一步地指导您。

将您的 microSD 卡插入 microSD 读卡器,然后插入您的 USB 驱动器。将 zip 文件 *demo_v3_RTSP_4.61.0.1.zip* 复制到 *microSD* 文件夹,并在此处解压缩 zip 文件。同样,我安装了 Winzip(因为我讨厌自己),但您可以使用任何您喜欢的压缩软件。这将解压缩文件 *demo_wcv3.bin*。将该文件保留在那里,然后删除 *demo_v3_RTSP_4.61.0.1.zip*。

现在取出 microSD 卡并拿出您的 Wyze Cam v3。如果已连接 USB 数据线,请将其拔下。在 **SETUP** 按钮旁边,有一个 microSD 卡插槽,上面盖着一小块橡胶。取下此橡胶以露出插槽。在我的 Wyze Cam v3 上,实际上有一个微小的图示显示了 microSD 卡的插入方向。不要像我一样将 microSD 卡插反,因为那样很难取出。microSD 卡只有一侧有凹口,所以如果按照图示操作,只有一种插入方式。当您将其推入时,会发出弹性的咔哒声,因此当您再次按下 microSD 卡时,它会弹出。

接下来的部分有点棘手。在插入 USB 数据线将 Wzye Cam v3 连接到电源插座的同时,按住 Wyze Cam v3 上的 **SETUP** 按钮。继续按住 **SETUP** 按钮。摄像头指示灯变为紫色,然后变为蓝色。一旦指示灯变为蓝色,请松开 **SETUP** 按钮。等待 3-4 分钟。

现在回到您的 Wyze 应用程序并选择您的摄像头。从摄像头设置中,转到“高级设置”。如果向下滚动到底部,您可以看到 **RTSP**。

一旦您打开 RTSP,您就可以为访问 RTSP 生成用户名和密码。这将用于将您的 Wyze Cam v3 连接到 Blue Iris。确保用户名和密码的长度都在四到十个字符之间。然后点击“生成 URL”。这将生成 RTSP URL,供下一节使用。

搞定!现在 Wyze 摄像头已设置好,我们拥有了让它与 Blue Iris 和 CodeProject.AI Server 一起工作所需的一切。

让 Wyze 摄像头与 Blue Iris 一起工作

第一步是使用 Blue Iris 设置 Wyze 摄像头。由于 Blue Iris 是为与摄像头配合使用而设计的,因此此设置相对容易。只需在 Blue Iris 的主区域中右键单击或点击右上角的“+”符号。

这将弹出 **新摄像头** 对话框。在此,您可以输入摄像头的 **全名** 和 **简称**。全名不必是您为 Wyze 摄像头设置的名称,这只是 Blue Iris 将如何称呼它。

我称我的为“Eye Spy”和“Spy1”。点击“确定”。这将打开一个 **网络 IP 摄像头配置** 窗口。

首先,您需要将 http 下拉菜单更改为 *rtsp://*。然后输入您的 Wyze 应用程序中的 *rtsp://* 地址。它看起来像 *rtsp://username:pasword@10.0.0.299*。输入地址后,用户名和密码将自动填充到设置中。点击“确定”。

然后从 **视频** 选项卡中,将 **最大速率** 更改为 333333 [30 fps]。

搞定!Wyze Cam v3 已正式在 Blue Iris 中工作。

使用 Blue Iris 和 CodeProject.AI 服务器检测目标

现在终于可以进行目标检测了。我不想将摄像头对准外面(因为我妻子不太喜欢),所以我只能检测房间里的东西。那就是我和我的狗。

CodeProject.AI Server 于 2022 年 1 月发布时,并非从一开始就设计为与 Blue Iris 配合使用。但随着时间的推移,Blue Iris 与 CodeProject.AI Server 的集成越来越深入。现在,CodeProject.AI Server 已成为 Blue Iris 启动的一部分,使用 CodeProject.AI Server 所需的一些设置已包含在 Blue Iris 中,并且 CodeProject.AI Server 被 Blue Iris 团队视为 默认 AI 服务

尽管如此,(在撰写本文时)这意味着 Blue Iris 团队和 CodeProject.AI Server 开发人员仍在努力使这两个项目的结合更加顺畅和用户友好。也许,当您阅读本文时,显示的设置可能看起来不同。或者,您可能使用的是不同的摄像头或流,或者有不同于本文介绍的需求。

如果您在 Blue Iris CodeProject.AI Server 集成过程中遇到任何困难,我强烈推荐以下资源:

  • CodeProject.AI Server 讨论帖 - 这是 CodeProject.AI Server 开发的起点。如果您有任何问题、抱怨或功能请求,请在此处分享。开发人员全心全意地致力于改进 CodeProject.AI Server,并且他们绝对想听到您的意见。
  • ipcamtalk 论坛关于 Blue Iris 的讨论 - 这里有一个神奇的、长达数页的帖子,其中包含了用户与 Blue Iris 和 CodeProject.AI Server 合作的漫长历史。如果您有 Blue Iris 设置或问题无法解决,他们会帮助您解决。特别是,帖子 5.5.8 - 2022 年 6 月 13 日 - CodeProject.AI Server。您可以从头开始阅读该帖子,以了解 Blue Iris 和 CodeProject.AI Server 集成的整个历史,但如果您从第一页开始阅读,请谨慎实施所提供的建议/设置。Blue Iris 和 CodeProject.AI Server 的集成在短短几个月内发生了很大的变化。
  • Blue Iris 论坛 - 如果您有更多关于 Blue Iris 的问题,这也是一个很好的资源。

要设置人物或狗的检测,请从 Blue Iris 的 **AI** 选项卡开始。

IP 地址应该已经默认填写。对我来说,这是 127.0.0.1。我见过其他人输入 localhost 也可以工作。这里最重要的是 CodeProject.AI Server 成功启动。接下来,因为我想检测人物或狗,所以我想使用自定义模型。 Mike Lud 是 CodeProject 的社区工程师,也是 Blue Iris 和 CodeProject.AI Server 集成的先驱,并且开发了许多用于目标检测的自定义模型,例如自动车牌识别 (ALPR) 模型。截至撰写本文时,他的 CodeProject.AI Server 自定义模型可在 他的 GitHub 上找到。他的模型包括:

  • IPcam-combined Labels: - person, bicycle, car, motorcycle, bus, truck, bird, cat, dog, horse, sheep, cow, bear, deer, rabbit, raccoon, fox, skunk, squirrel, pig
  • IPcam-general Labels (includes dark models images): - person, vehicle
  • IPcam-animal Labels: - bird, cat, dog, horse, sheep, cow, bear, deer, rabbit, raccoon, fox, skunk, squirrel, pig
  • IPcam-dark Labels: - Bicycle, Bus, Car, Cat, Dog, Motorcycle, Person

这些模型非常出色,所以我将使用它们来检测我和我的狗。因为这些是自定义模型,它们位于以下文件夹中,选中“使用自定义模型文件夹”复选框后必须选择该文件夹:*C:\Program Files\CodeProject\AI\modules\ObjectDetectionYolo\custom-models*。

由于我的显卡老旧,不支持 NVIDIA,所以我将“CUDA”框保留为未选中状态。如果您的显卡支持 NVIDIA 并且您想启用 GPU 支持,则需要 下载此适用于 Windows 的 cuDNN 安装脚本。我的系统纯粹运行在 CPU 上。

此时,点击“打开 AI 控制面板”在您的浏览器中打开 CodeProject.AI Server。如果设置正确,此页面将打开。如果设置错误,则不会。

因为我只想检测人物和狗(而且我的小电脑处理能力有限),所以我不需要背景移除器等功能。因此,通过右键单击三个点,然后选择“停止”来关闭这些功能。顺便说一句,不要同时运行 YOLO 检测和 .NET 检测。只选择一种。

保持 CodeProject.AI Server 选项卡打开。

接下来打开摄像头设置,转到 **触发** 选项卡。

因为我阅读了 ipcamstalk 上 CodeProject.AI Server 的所有内容,在“触发时”框下,我将“添加到警报列表”更改为“高分辨率 JPEG 文件”。但我不确定这是否必要。另外,在“中断时间”下,将“在...内触发结束,除非重新触发”更改为 20 秒,并将“最大触发/警报持续时间”更改为 60 秒。不确定这是否是最佳设置,但对我来说是有效的。

然后配置 **运动传感器** 设置。通过在 **触发** 选项卡上点击“运动传感器”源旁边的“配置”来访问此菜单。运动传感器的默认设置可能还可以,但根据我在 ipcamtalk 论坛上的阅读,将“最小对象尺寸”更改为 442,将“最小对比度”大小更改为 40。点击“确定”。

在 **触发** 选项卡中,点击“人工智能”以打开 **AI** 选项卡。

确保选择了 CodeProject.AI 或 DeepStack(应该已经选好了)。在“确认”框中,键入“person,dog”,在逗号和 dog 之间不要有空格。在“取消”框中,输入模型无法检测到的内容,例如 giraffe。这是完全未经证实的,但 ipcamtalk 论坛上的一位用户表示,您的 AI 服务“一旦找到‘确认’框中的内容,就会停止处理图像”。其他用户在他们的设置中没有这个框,所以它可能不是必需的。看看上面,可以同时检测人物和狗的模型是 ipcam-combined 模型,所以将其放入框中。而伟大的 Mike Lud 本人将他的“最小置信度”设置为 50%,他的“+ 实时图像”设置为 10,他的“分析每个图像”设置为 500 毫秒,所以这是权威。

这个 **警报** 选项卡仍然是默认设置(我认为),但以防万一,这是我的摄像头设置中的 **警报** 选项卡。

现在转到 **Blue Iris 状态** 选项卡。这是我们检查目标检测是否有效的地方。

转到 **日志**,在该选项卡中有一个事件和警报列表。因为摄像头对着我,我稍微移动一下,看着日志,看到它说:“AI: [ipcam-combined] person: 86% [724,275 1647,1061] 136 ms”。

搞定!AI 检测正在工作!

但那只是我。我的狗呢?

对于接下来的部分,我将查看视频源上的 AI 检测,而不是仅仅查看日志。

首先,转到摄像头显示屏上的“开始/停止录制”按钮并点击它以开始录制。再次点击按钮停止录制。我的摄像头持续开启并录制一旦激活,所以在我的列表中只有一个片段。录制会显示在左侧的片段菜单中。

从 **所有片段** 侧边栏中,双击您想要的录制片段,这将打开视频流。这将作为视频加载流,您可以滚动浏览。

下一步是确保“测试与调优”处于活动状态。在视频屏幕上,右键单击,转到 **测试与调优**,并确保选中“使用 AI 进行分析”。现在视频流将显示检测框,指示在视频回放中检测到了什么。

瞧!检测到狗了!

希望这能帮助您开始使用 Blue Iris、CodeProject.AI Server 和 Wyze Cam v3 进行目标检测。如果您有任何问题,请在下面的评论中告诉我。

© . All rights reserved.