我需要比较一个项目中的两个图像, 图像将是两种相同类型的果实 - 两个不同的苹果 - 两个不同的图像 -
更清楚的是,数据库将包含苹果从树上采摘到腐烂之前所用阶段的图像。
用户将上传他们拥有的苹果图像,软件应将其与数据库中的所有图像进行比较,并检索匹配图像的数据并告诉用户在哪个阶段...
我在使用OpenCv emgu的图像之前进行了比较,但如果这是最好的方法,我真的没有太多的知识......
我需要专家建议是我在项目中说的甚至可能吗?或整个数据库图像'将匹配用户的图像! 这是“图像处理”还是其他什么? 是否有任何建议的教程来学习如何做到这一点?
我知道它似乎还不完全清楚,但这只是一个疯狂的想法,我希望我能够了解更多如何将它变为现实!
N.B该项目将是一个Android应用程序
答案 0 :(得分:3)
这是监督图像分类问题的一个例子,这是一个相当广泛的领域。您可以阅读图像分类here。
你要解决这个问题的方法是定义几个衰变阶段(新鲜,开始腐烂,半腐烂,完全腐烂),将每个阶段的水果的许多图像的数据集放在一起,然后训练每个舞台上的图像分类器。样本数据集应包含许多不同设置中许多不同水果的图像。如果你想支持不同类型的水果,你需要为每种水果培养不同的分类。
有许多图像分类工具。仅举几例:
OpenCV's haar classifier
dlib's hog classifier
Matlab's Computer Vision System Toolbox
VLFeat
您可以自行决定哪种方法最适合您的情况。
鉴于这是一个相当广泛的问题,除非您具有图像分类经验,否则我不会期望快速提出可靠的解决方案。如果您正在尝试开发产品,我建议您与computer vision expert联系以获得解决方案。
如果您只是想了解有关图像分类的更多信息,那么这可能是一种有趣的方式,可以使用不同的工具,并了解其中的内容。您可能希望首先了解机器学习。加州理工学院提供free online course,为该主题提供了很好的介绍。