关键词:python像素级处理图像,python提取图片关键特征。
基于knn的图像识别技术主要涉及到以下概念:
目前很多主流图像识别技术皆是通过形状等因素识别图像内容,这里介绍一种通过rgb成色技术来简单识别 ❗ 简单识别 ❗ 简单识别指定内容的方法。
原理很简单,在一组给定的图片中,只需要得到需要被识别的内容的颜色,即可通过rgb的滤镜技术将所需部分过滤出来。
在这个例子中,目标整体颜色为红色,那么基于rgb的成像技术,我们只需要提取出像素中红色值大于1.5被平均值的像素即可(1.5这个系数越大结果越保守)。这里我们将目标颜色染成黑色,并将其余部分染成白色。
def colorless(filename):
image=SimpleImage(filename)
for pixel in image:
avg=(pixel.red + pixel.green + pixel.blue)/3;
if pixel.red > 1.5*avg:
pixel.red = 0
pixel.blue = 0
pixel.green = 0
else:
pixel.red = 255
pixel.blue = 255
pixel.green = 255
return image
提取效果如下:
什么 ❓ 你觉得内容不够嘈杂❓ ❓ ❓
我们来测试以下稳定性
我们可以看到在下面这张图中有很多错误的点,我们可以通过提高阀值来减少这样的误差
提高阀值后效果还是很明显:
通过rgb算法对简单物体识别还是比较准确高效的,后期通过knn算法进行机器训练后可以达到很高的识别准确率。