opencv
1 读取
#imreadmode -1:保持原本, 0:灰度, 1:彩色
cv2.imread(‘path’, 1)
2 转成灰色
cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
3 显示图像
cv2.imshow
4 生成直方图
import cv2
import matplotlib.pyplot as plt
zhou_data = cv2.imread(image_zhou, 0)
zhou_hist = cv2.calcHist([zhou_data], [0], None, [256], [0, 255])
# calcHist生成的是list,直接调用cv2.imshow()不会显示正确结果
plt.figure()
plt.title('zhou histogram')
plt.plot(zhou_hist)
plt.show()
5 插值方法
INTER_NEAREST 最近邻插值
INTER_LINEAR 双线性插值(默认设置)
INTER_AREA 使用像素区域关系进行重采样
INTER_CUBIC 4x4像素邻域的双三次插值
INTER_LANCZOS4 8x8像素邻域的Lanczos插值
6 hash算法,计算图片相似度
安装imagehash,直接调用函数
from PIL import image
import imagehash
image_hash = imagehash.phash(Image.open(image_path_full), hash_size=8, highfreq_factor=4)
对图片进行裁剪,尺寸为(hash_size*highfreq_factor)2,返回的hash码长度为hash_size2
7 找到图片中的文字
7.1 最大稳定极值区域MSER
7.2 凸包
convexHull
7.3 nms
7.4 自适应阈值化
cv2.adaptiveThreshold()
7.5 霍夫变化
cv2.HoughLines
7.6 Canny边界搜索
cv2.Canny
8 ubuntu opencv安装 c语言版本
安装文档
下载安装包,解压,或者直接从github克隆下来
git clone https://github.com/opencv/opencv.git
cd ~/opencv
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
make -j7
sudo make install