- 1、本文档共16页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机视觉与颜色追踪 人工智能开源硬件与python编程实践 情境导入 在无人智能驾驶系统中,红绿灯识别是一项基本技术。利用无人车的前置摄像系统,对实时捕捉到的图像帧进行图像处理和分析,发现前方的交通指示装置,然后对交通装置区域里的颜色块进行检测,实现红绿灯的识别,引导无人车的运动。 颜色的识别与追踪不仅应用于智慧交通、机器人等智慧装备之中,在工业、农业及日常生活中都有广泛应用。 任务与目标 了解图像颜色识别技术的基本原理、相关算法和应用框架; 掌握运用人工智能开源硬件设计颜色识别系统的方法,提升Python编程方法; 应用人工智能开源硬件和Python相关算法模块设计颜色跟踪功能; 针对生活应用场景,进一步开展创意设计,设计具有实用价值的颜色跟踪应用系统。 知识拓展:颜色空间模型 光的颜色由不同波长的电磁波所决定。人的眼睛内有几种辨别颜色的锥形感光细胞,分别对黄绿色、绿色和蓝紫色(或称紫罗兰色)的光最敏感(波长分别为564、534和420纳米)。 表征颜色的模型的不止一种,主要可以通过RGB、HSV、LAB、CMYK等色域模型将可见光的颜色描述出来。 知识拓展:RGB模型 在模型的三维直角坐标系中,x、y、z轴相当于红、绿、蓝三通道,原点vec3(0.0, 0.0, 0.0)代表黑色,顶点vec3(1.0, 1.0, 1.0)代表白色,原点到顶点的中轴线x = y = z代表灰度线。 RGB模型适用于计算机表示,将RGB以不同的比例混合后,人的眼睛可以形成与其它各种频率的可见光等效的色觉。 知识拓展:HSV模型 HSV模型(Hue色相、Saturation饱和度、Value/Brightness亮度)比较适合人类习惯; 模型中H即光谱颜色所在的位置,用角度来表示,红、绿、蓝分别相隔120°,互补色(CMY)分别相差180°。纯度S范围在[0, 1],表示所选颜色的纯度和该颜色最大的纯度之间的比率,当S = 0时,代表灰度。V表示色彩的明亮程度,范围[0, 1],与光强度无直接关系。 知识拓展:Lab模型 Lab模型又称亮度-对比度模型,是由亮度(Luminosity)和有关色彩的a、b三个要素组成。a表示从洋红色到绿色的范围,b表示由黄色到蓝色的范围; L取值范围是[0, 100],当L = 50时,相当于50%的黑。a、b的值域都是[-128, 127]; Lab模型具有不依赖设备的优点,如果想在数字图像处理中保留宽阔的色域和丰富的色彩,最好选择Lab模型。 基于Lab色彩空间的图像分割 Lab颜色空间中,L:亮度层,a:颜色在红绿轴的分量,b:颜色在蓝黄轴的分量。通过计算每个像素点和六种颜色平均值的欧氏距离,这六种距离中最小的距离既为该像素点的颜色; LAB阈值分割法有两个关键步骤: 第一, 确定进行正确分割的阈值; 第二, 将图像的所有像素与阈值进行比较, 以进行区域划分, 达到目标与背景分离的目的。 设计与实践 颜色追踪摄像头参数设置 时钟控制设计 颜色追踪编程 红绿蓝三颜色追踪 调试、验证及完善 颜色追踪摄像头参数设置 # 设置摄像头工作参数 sensor.reset() #初始化摄像头组件; sensor.set_pixformat(sensor.RGB565)#设置为彩色; sensor.set_framesize(sensor.QVGA)#设置图像的大小; sensor.skip_frames() #在更改设置后,跳过若干帧,等待摄像头组件的稳定; # 自动增益/白平衡 sensor.set_auto_gain() #自动增益开启或者关闭。在使用颜色追踪算法时,需要关闭自动增益。 sensor.set_auto_whitebal() #自动白平衡开启或者关闭。在使用颜色追踪算法时,需要关闭此功能。 * 时钟控制设计 time.ticks()返回以毫秒计的通电后的运行时间。 time.sleep(ms)休眠 ms 毫秒数。 class time.clock返回一个时钟物件。 clock.tick()开始追踪运行时间。 clock.fps()停止追踪运行时间,并返回当前FPS(每秒帧数)。在调用该函数前一定要先调用tick()方法; clock.avg()停止追踪运行时间,并返回以毫秒计的当前平均运行时间。在调用该函数前始终首先调用 tickclock.reset()重置时钟物件。 * 颜色追踪编程方法 image.find_blobs()方法,用于查找图像中所有色块,并返回一个所搜索到的色块物件的列表。 thresholds 元组列表中每个元组需要有六个参数值(l_lo,l_hi,a_lo,a_hi,b_lo,b_hi) ,分别是LAB颜色模型的L、A和B三个参数的最小值和最大值。 roi参数用来设置颜色识别
文档评论(0)