杏仁损伤检测器——基于CNN的图像分类

发布于:2022-08-09 ⋅ 阅读:(230) ⋅ 点赞:(0)

        尽管食品工业包括各种类型的企业如农业、食品加工和营销等,目前对食品的评价仍旧由人工进行,现在人工评估的使用由训练有素的工人来进行。此外,人工评估是主观的,容易出现人为错误,其固有的成本过高。这就导致了利用 现有技术的重要性,这些技术不仅将提高效率,而且还将提高评价的质量。图像处理技术和模式识别为解决该问题提供了可能。深度学习技术被广泛应用于食品检测的自动化领域。

        在这个项目中,我们创建了一个基于flask的应用程序来对上传的杏仁图像进行分类。首先,我们训练了卷积神经网络(CNN)并保存了模型参数,用于图像的结果预测。为了简单起见,最初为杏仁类型创建了正常和破损两种数据。

        如上所述,这个项目是对杏仁分为两类,即正常的或破碎的,因此二元交叉熵将被用作损失函数。二值交叉熵是一种用于二值分类任务的损失函数。这些任务回答问题,只有两 个选择,给出是或否

                                                         图1损失函数方程

        当观察属于第1类时,公式的第一部分变得活跃,第二部分消失,反之亦然。

        数据集展示

        数据预处理:所有图像都被调整到宽度为150,高度为150。然后数据增强应用于所训练、测试和验证的数据集上,数据增强应用了翻转、缩放和旋转等操作。由于图像的RGB系数在0-255系数之间,这对模型来说是很高的,因此必须通过重新缩放1来调整0到1之间的目标值。

        由于模型是对 (150,150,3) 的输入形状进行训练的,因此必须将上传的图像进行变换和调整大小,然后再使用自定义函数实现预测。

         实现过程:使用Keras框架,创建的模型由2个卷积层组成,卷积的激活函数是ReLU激活函数,池化采样最大池化。此外,在卷积层的顶部还添加了一个完全连接层

        应用程序开发:训练好的模型被保存并加载到一个flask应用程序的后端。然后创建一个会话来使用该模型预测上传的图像,上传的图像将保存在SQLlite数据库中,并将预测结果文件保存在指定的文件中。当图像在后端被分类后,图像预测结果精度将被发送到一个前端网页,在那里结果将与预测结果一起显示。

         完整代码联系:QQ525894654

         结果如下:


网站公告

今日签到

点亮在社区的每一天
去签到