2.1-2.2-第二章-基础知识准备 第一章-开发准备 openmv教程 好家伙openmv与STM32教程 openmv物体识别 openmv巡线代码 openmv串口发送数据 openmv人脸识别

第二章-基础知识准备

非常详细的视频和文字教程,讲解常见的openmv教程包括 巡线、物体识别、圆环识别、阈值自动获取等。非常适合学习openmv、K210、K230等项目
视频合集链接在:

openmv教程合集 openmv入门到项目开发 openmv和STM32通信 openmv和opencv区别 openmv巡线 openmv数字识别教程LCD

2.1 python基础知识

通过网站学习(有C语言基础)

根据菜鸟教程网站学习,跟着网站敲一遍代码或者仔细看一遍 有印象就行

Python 基础教程 | 菜鸟教程

链接:https://www.runoob.com/python/python-tutorial.html
在这里插入图片描述

跟着视频学习(无其他语言基础)

如果没有编程语言基础可以跟着小甲鱼视频教程学习,学习到 大概函数就够用了。

【Python教程】《零基础入门学习Python》最新版(完结撒花🎉)_哔哩哔哩_bilibili
在这里插入图片描述

2.2 图像处理背景知识

什么是摄像头

下图是我们生活中常见的摄像头
在这里插入图片描述
摄像头 是一种将光学信号变成电信号的一个装置。在计算机视觉中,最简单的相机模型是小孔成像模型。
在这里插入图片描述
小孔模型是一种理想相机模型,没有考虑实际相机中存在的场曲、畸变等问题。但是在实际使用时,这些问题可以通过在标定的过程中引入 畸变参数 解决,所以小孔模型仍然是目前最广泛使用的相机模型。

图像透过镜头,照在一个感光芯片上,感光芯片可以把光照的波长和强度等信息转成计算机(数字电路)可以识别的数字信号。

(注意: 一定不要给我们的图像感光芯片CMOS 弄上 灰尘或者指纹)

如果弄脏了,可以淘宝搜:CMOS清洁棒套装 然后购买套装去清洁一下。
在这里插入图片描述
什么是像素和分辨率

感光元件是有很多个感光点构成的,比如有640480个点,每个点就是一个像素,把每个点的像素收集整理起来,就是一副图片,那么这张图片的分辨率就是640480。

什么是帧率

帧率(FPS)就是每秒钟处理的图片数量,如果超过20帧,人眼就基本分辨不出卡顿。当然,如果用在机器上,帧率是越高越好的,OpenMV的最大帧率对比:
注:没有标注均为不传输图像给IDE,因为这个过程很耗费时间。

分辨率与处理性能的权衡: 分辨率越高,处理的计算量越大,可能影响帧率和实时性。在实际应用中,要根据场景和硬件挑选适合的分辨率。

什么是颜色

物理上,颜色就是不同波长的电磁波。

在这里插入图片描述
但是,根据人眼的视觉效果,可以通过 RGB,CMYK,HSB,LAB 色域,来将可见光的颜色描述出来。

RGB 三原色

三原色的原理不是物理原因,而是由于人的生理原因造成的。人的眼睛内有几种辨别颜色的锥形感光细胞,分别对黄绿色、绿色和蓝紫色(或称紫罗兰色)的光最敏感(波长分别为564、534和420纳米)。

所以 RGB 经常用于显示器上,用来显示图片。

在这里插入图片描述
LAB亮度-对比度

Lab颜色空间中,L亮度;a的正数代表红色,负端代表绿色;b的正数代表黄色,负端代表兰色。不像RGB和CMYK色彩空间,Lab颜色被设计来接近人类视觉。

因此L分量可以调整亮度对,修改a和b分量的输出色阶来做精确的颜色平衡。

(注意:在OpenMV的查找色块的算法中,运用的就是这个LAB模式!)

光源的选择

如果你的机器是在工业上,或者24小时长时间运行的设备,保持一个稳定的光源是至关重要的,尤其在颜色算法中。亮度一变,整个颜色的值会变化的很大!

所以无论完成的项目是商业工业项目或者比赛项目,都应该注意光源对摄像头的影响,后面我们会讲解如何通过补光或者调节阈值完成 不同光源或者环境的适应。

镜头的焦距

因为图像是通过镜头的光学折射,照到感光元件上的。那么镜头就决定了,整个画面的大小和远近。一个最重要的参数就是焦距。
在这里插入图片描述
还有一点是镜头的畸变,因为光学原理,在感光芯片上不同的位置,与镜头的距离不同的,简单说就是近大远小,所以在边缘会出现鱼眼效果(桶型畸变)。为了解决这个问题,可以在代码中使用算法来矫正畸变,注:OpenMV中使用image.lens_corr(1.8)来矫正2.8mm焦距的镜头(一般我们openmv摄像头都是2.8mm焦距的)。也可以直接使用无畸变镜头。无畸变镜头加入了额外的矫正透镜部分,价格自然会高不少。

一般在一下特殊场景可以使用对应摄像头:

广 角 摄 像 头: 广角摄像头拥有更大的视野,能够捕捉更多的场景信息,适合需要覆盖较大范围的应用场景。

适合场景: 机器人导航获得更多周围信息、监控录制 减少监控盲区、比如小车跟着小球或者小车抓取地上垃圾。

无畸变摄像头: 无畸变摄像头优化了广角摄像头的畸变问题,提供更加真实的图像。

适合场景:测量物体尺寸等。

长焦摄像头: 长焦摄像头能够捕捉远距离的细节信息,适合目标距离较远的应用场景。

适合场景:识别远距离物体,需要对物体放大识别,比如2023电赛E题 识别远处的黑色框。

下图是 如何给openmv 更换长焦镜头(更换其他镜头也是一样操作)。
在这里插入图片描述
镜头的滤片

在镜头上,通常会有一个滤片
在这里插入图片描述
这个滤片是做什么的呢?

我们知道,不同颜色的光,是波长不一样。在正常环境中,除了可见光,还有很多红外光,在夜视中,用的就是红外光。

但是,在正常颜色应用中,是不需要红外光的,因为红外光也会使感光元件受到反应,就使得整个画面泛白。所以我们在镜头上放一个只能通过波长 650nm 以内的滤光片,将红外光进行过滤。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值