python机器学习+opencv实现果蔬识别

一、目的

对输入图像进行图像特征提取,并感受各种不同的特征对最终图像识别的影响。

二、原理

水果有位置、方向、周长、面积、矩形度、宽长比、球状性、圆形度、不变矩、偏心率等各种特征。对图像进行灰度化再经过二值化等处理可以得到图像中水果的轮廓,利用该轮廓可以求得各种特征,利用一些特征构造模型可以实现对水果种类的检测识别。

        以下介绍python中使用opencv库进行图像处理的一些主要函数:

        读入图像:cv2.imread(filepath,flags),显示图像:cv2.imshow(wname,img)

        颜色空间转换:cv2.cvtColor(img,cv2.COLOR_X2Y)

        二值化:cv2.threshold(src, thresh, maxval, type[, dst])

        轮廓提取:cv2.findContours(contour,cv2.RETR_TREE,cv2.CHAIN_APPROX_SIMPLE)

        绘制轮廓:cv2.drawContours()

        求取面积:cv2.contourArea(),求取周长:cv2.arcLength()

一些特征的计算过程如下:

矩形度:

,AO是该物体的面积,而AMER是其外接矩形的面积

球状性:

,ri为最大内接圆半径,rc为最小外接圆半径

圆形度:e=(4π 面积)/(周长 * 周长);

三、实现过程

1.数据集说明

数据集中包含苹果和香蕉两种水果,分别存放于对应的文件夹中

图1 部分数据集

2.提取特征

读入所有的水果图像,首先对它们做如下处理:转为灰度图像、二值化

评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

deleteeee

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值