版本:
平台:ubuntu 14 / I5 / 4G内存
python版本:python2.7
opencv版本:2.13.4
依赖:
如果系统没有python,则需要进行安装
sudo apt-get install python
sudo apt-get install python-dev
sudo apt-get install python-pip
sudo pip install numpy mathplotlib
sudo apt-get install libcv-dev
sudo apt-get install python-opencv
使用感知哈希算法进行图片去重
原理:对每个文件进行遍历所有进行去重,因此图片越多速度越慢,但是可以节省手动操作
感知哈希原理:
1、需要比较的图片都缩放成8*8大小的灰度图
2、获得每个图片每个像素与平均值的比较,得到指纹
3、根据指纹计算汉明距离
5、如果得出的不同的元素小于5则为相同(相似?)的图片
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import cv2
import numpy as np
import os,sys,types
def cmpandremove2(path):
dirs = os.listdir(path)
dirs.sort()
if len(dirs) <= 0:
return
dict={}