Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Latest commit

 

History

History
History
 
 

readme.md

Outline

计算机视觉python

一下是用python做计算机视觉的一些程序

imageSearch 进行图像检索

图像搜索原理:

提取图像特征 : 如采用SIFT、指纹算法函数、哈希函数、bundling features算法等也可以针对特定的图像集群采用特定的模式设计算法

图像特征的存储 : 一般将图像特征量化为数据存放于索引表中,并存储在外部存储介质中,搜索图片时仅搜索索引表中的图像特征,按匹配程度从高到低查找类似图像。

相似度匹配

相似度匹配。如存储的是特征向量,则比较特征向量之间的加权后的平方距离。如存储的是散列码,则比较Hamming距离。初筛后,还可以进一步筛选最佳图像集。

图片搜索引擎算法及框架设计

基本步骤: 采用颜色空间特征提取器和构图空间特征提取器提取图像特征。图像索引表构建驱动程序生成待搜索图像库的图像特征索引表。图像搜索引擎驱动程序执行搜索命令,生成原图图像特征并传入图片搜索匹配器。图片搜索匹配内核执行搜索匹配任务。返回前limit个最佳匹配图像。

定义图像描述符

虽然RGB值很容易理解,但RGB色彩空间无法模拟人眼接受到的色彩。取而代之,我们使用HSV色彩空间将像素点的映射到圆bin体上。 这个图像描述符是HSV颜色空间的3D颜色直方图(色相、饱和度、明度)。

我认为解释3D直方图最好的方式是用连接词AND。一个3D HSV颜色描述符将查找指定图像中1号bin有多少像素含有色相值,AND有多少像素有饱和度值,AND有多少像素有明度值。计算出符合条件的像素值。虽然需要对每个bin重复这个操作,但可以非常高效的完成这个任务。所以是乘法

对于我们的假期照片图像搜索引擎,将在HSV色彩空间中使用3D颜色直方图,8个bin用于色相通道、12个bin用于饱和度通道、3个bin用于明度通道,总共的特征向量有8 × 12 × 3=288。这意味着数据集中的每幅图像,无论其像素数目是36 × 36,还是2000 × 1800。最终都会用288个浮点数构成的列表抽象并量化表示。

这里不计算整个图像的3D HSV颜色直方图,而是计算图像中不同区域的3D HSV颜色直方图。使用基于区域的直方图,而不是全局直方图的好处是:这样我们可以模拟各个区域的颜色分布

CalcHist计算一个图像的颜色直方图

参考资料

OpenCV实现图像搜索引擎

用Python和OpenCV创建一个图片搜索引擎的完整指南

一个外国大牛的图像搜索博客The 3 Types of Image Search Engines

Morty Proxy This is a proxified and sanitized view of the page, visit original site.