使用Matlab, Arduino和webcam进行颜色检测和分离

版本1.0.2 (982 KB) 法尔艾哈迈德
本项目帮助您了解颜色检测的基础知识,并在MATLAB的帮助下连接Arduino和网络摄像头。

330下载

更新4月15日2020

查看许可协议

你好,

欢迎来到我的Fileexchange项目。如果你按照步骤去做,这很容易。它很长,但值得一读。我将向您解释项目代码和要遵循的步骤。我在youtube上有一个视频,清楚地解释了代码。你也可以看。

警告:以下信息是我根据个人利益选择的。那些数据肯定会帮助你完成这个项目

让我们开始吧。

步骤1:您需要的组件很少。
1) Matlab
2)网络摄像头(这两个东西对于颜色检测来说已经足够了)

但是对于分离,您将需要以下内容。

3) Arduino
4)伺服电机
5)带式输送机机构(你自己的)
6)适当的照明。


以上组件用于制作完整的项目.......YouTube视频链接如下

第二步:理解代码……和它一起工作是非常重要的。

打开Matlab并运行color_detection_basics。M文件来理解代码。读了
绿色的评论。

我有一段视频,逐行清晰地解释了这个程序。

代码工作:(https://www.youtube.com/watch?v=o84z4ZfK-SA&feature=youtu.be
代码解释:(https://youtu.be/RrX-RyPieT8

这个基本代码将让您了解如何从图像中检测RGB颜色。

一旦完成,然后运行color_detection_using_webcam。m文件来检测RGB颜色
来自直播视频

下面的链接教授如何在matlab中为直播视频连接网络摄像头

https://www.youtube.com/watch?v=Ekl21W7by_k&list=PLEo-jHOqGNyUWoCSD3l3V-FjX9PnHvx5n&index=28&t=0s

代码工作:(https://www.youtube.com/watch?v=o84z4ZfK-SA&feature=youtu.be
代码解释:(https://youtu.be/RrX-RyPieT8

步骤3:如果你是成功的上述步骤,那么它变得容易....

从MATLAB的附加组件中安装Ardu万博1manbetxino硬件的MATLAB支持包
软件

使用下面的链接学习Matlab和arduino之间的接口和控制
伺服。

//www.tianjin-qmedu.com/help/万博1manbetxsupportpkg/arduinoio/examples.html

现在打开color_detection_and_separation。M文件并运行.........如果成功了
hurrayyyy……

如果不行也不用担心,我花了几周时间才完成。

注意:1)确保对检测物体有足够的照明。
2)只能检测红、绿、蓝三色物体。
3)如果你的对象没有检测到使用我的代码…您需要更改以下内容,直到
检测到……

bw_r = imbinarize (diff_r, 0.2);//对于红色,我使用0.2作为阈值。可以是
0到1之间的任意值。

bw_g = imbinarize (diff_g, 0.071);//0.071为绿色的阈值

bw_b = imbinarize (diff_b, 0.2);//这些是我的对象的测试值。它可能或
可能对你不起作用。所以,如果需要的话,就改变吧。

4)将相机精确放置在物体上方,以避免背景噪音。主要使用a
浅色背景(白色)
5)确保arduino是否连接到正确的COMPORT和伺服到
右数字引脚(在我们的例子中是D3)

引用作为

法尔汉·艾哈迈德(2022)。使用Matlab, Arduino和webcam进行颜色检测和分离(//www.tianjin-qmedu.com/matlabcentral/fileexchange/75024-color-detection-and-separation-using-matlab-arduino-webcam), MATLAB中央文件交换。检索

MATLAB版本兼容性
使用R2018a创建
兼容R2014a至R2020a
平台的兼容性
窗户 macOS Linux

社区寻宝

在MATLAB Central中寻找宝藏,并了解社区如何帮助您!

开始狩猎!