实现一个简单的图像搜索引擎---前奏

效果描述:
输入:随机选择一张图片
输出:输出与之最近似的几张图片
效果图:
在这里插入图片描述

在这里插入图片描述
一、环境搭建与配置
1、我用的是Anaconda来配置的环境,用Pycharm来编写的。具体需要在Anaconda里配置python,openCV,numpy,tensorflow等具体如下图:
在这里插入图片描述
在这里插入图片描述
2、然后在Pycharm里把Anaconda里配置的环境导入;
在这里插入图片描述

3、由于该项目需要在键盘输入参数,所以需要用终端输入命令,右键想要运行的文件然后选择Open in terminal 即可。
在这里插入图片描述
4、一般的话安装openCV可能会出现错误
用以下代码检测:

import cv2
cv2.__version__
#出现你的opencv版本号即表示成功!

二、准备图片:
1、图片库:从效果图可以看出,输出的图片都是大小相同的,所以要求准备的图片都是400X166像素的png图片
在这里插入图片描述
准备的图片越多越好,我准备了25张图片,修改图片可以PS等工具进行。

2、搜索图片:
从输入格式看,需要选择一张目标图片,此图片没有具体格式要求。
三、文件搭建:
1、首先创建一个总文件,名字任意例如“same”
2、把图片库的图片放入same子文件下命名为“images”
3、把搜索图片放入same子文件下命名为“queries”
四、整体思路:
1、获取图库每个图片的直方图(颜色分量)
2、获取目标图片的直方图
3、利用卡方距离算法进行计算(得出的值越小,说明越接近)
4、对运算结果进行排序,输出最近的几个值得图片

这样初步准备工作大体完成,接下来就是代码阶段。

发布了29 篇原创文章 · 获赞 5 · 访问量 4617

猜你喜欢

转载自blog.csdn.net/guoyihaoguoyihao/article/details/89144302