主要内容

图像反演

这个例子展示了如何使用V4L2视频捕获和SDL视频显示块从树莓Pi®块库实现一个图像反演算法与Simulink®模型,并在树莓Pi硬件上运行模型。万博1manbetx

介绍

黑白图像反演是指图像处理技术,其中浅色区域被映射到暗,并且暗区映射到光线。换句话说,在图像反转黑色变为白色而白色变为黑色。倒黑白图像可以被认为是原始图像的数字负极。

在本例中,将反演算法应用于从USB相机捕获的图像的红色(R)、绿色(G)和蓝色(B)组件,创建彩色数字负效应。图像的R, G和B组件被表示为uint8值。也就是说,任何颜色组件的取值范围是0到255。假设位置处的强度值$(x,y)$这个图像的$ i(x,y)$,则反演映射定义为美元I_{倒}(x, y) = 255 - i (x, y)

先决条件

所需的硬件

要运行此示例,您将需要以下硬件:

(可选)要在外部显示器上显示输出视频,您将需要以下功能:

  • HDMI或复合电视,或带有DVI或HDMI输入的监视器,以及适当的电缆

  • USB鼠标和键盘

任务1 - 连接相机

在此任务中,您将将USB摄像头或Raspberry PI相机模块连接到Raspberry PI硬件,并检查Linux内核是否正确检测到摄像机。

1.如果你有USB摄像头:

  • 将USB摄像头连接到树莓派板上的USB端口之一。请注意,一些相机可能会消耗太多的电力,可能需要一个供电的USB集线器来正常运行。

如果你有树莓派相机模块:

  • 请参考厂商说明,使用CSI线缆将摄像机模块连接到树莓Pi板上。

  • 通过在Matlab提示符上执行以下命令激活Raspberry PI Camera模块V4L2内核驱动程序:

r = raspbertypi;系统(r,'/ sbin / modprobe bcm2835_v4l2')

2.检查Linux内核是否通过在MATLAB提示符上执行以下命令来检查摄像机:

系统(r, ls的推拿/dev/video *)

典型输出如下:

crw-rw—T+ 1 root video 81, 0 Dec 16 14:43 /dev/video0 . log . log . log . log . log . log . log

请确保上面显示的视频设备文件名与V4L2视频捕获块掩码上指定的“设备名称”参数匹配。在本例中,'Device name'应该设置为'/dev/video0'。

任务2 - 信号监控和参数调谐

对图像反转模型执行监视和调整操作。图像从连接树莓派硬件的USB摄像头捕获,并将图像反转的结果发送回主机,由SDL视频显示块显示。

1.打开图像反演模型。

2.选择应用程序>在硬件板上运行.查看打开页面的参数,确保树莓Pi板的连接参数是正确的。

3.去吧硬件标签并单击监视和优化工具栏上的按钮以在Raspberry PI硬件上运行模型。

4.观察主机上倒立图像的显示。

5.当模型运行时,双击持续的阻止并改变恒定值例如,从255到120。观察产生的图像效果。

6.按下停止模型上的按钮以停止模型执行。

任务3 - (可选)配置并运行映像中的模型作为独立应用程序

在此任务中,您将显示器连接到Raspberry PI硬件。从USB相机捕获的视频将由Raspberry PI硬件上运行的模型反转,并在连接到Raspberry PI硬件的显示器上显示。

1.使用适当的电缆,将显示器或电视连接到树莓派硬件。一旦连接,监视器将显示Linux桌面。

2.连接USB鼠标和键盘到树莓派硬件的USB端口。一旦连接,登录到Linux桌面就像你会到任何Linux®计算机。

3.打开图像反演模型。

4.选择应用程序>在硬件板上运行>选项....查看打开页面的参数,确保树莓Pi板的连接参数是正确的。

5.在模型中,单击构建、部署和启动按钮,以便在树莓派硬件上运行模型。在连接到树莓派硬件的监视器上,你会看到一个显示倒挂图像的窗口。

6.在MATLAB®命令行上执行以下命令,停止模型在树莓派硬件上运行

stopModel (r,“raspberrypi_inversion”);

其他要尝试的事情

  • 更改模型以对每个颜色组件使用不同的常量值。然后,独立地改变每个常量的值以获得更广泛的成像效果。

概括

这个例子展示了一个Simulink模型实现了万博1manbetx一个图像反演算法。V4L2 Video Capture和SDL Video Display block来自Raspberry Pi库,用于捕获和显示视频数据。该示例展示了模型如何在外部模式下运行,以及如何在Raspberry Pi硬件上作为独立的应用程序运行。