为了方便复制粘贴,汇总一下基础图像处理代码(如有遗漏欢迎指出,后续再添加修改)没有原理讲解,我也是个小白,方便日后写代码直接复制使用做的笔记
3、旋转 getRotationMatrix2D(), warpAffine()
2、反二进制阈值化 cv2.THRESH_BINARY_INV
5、反阈值化为0 cv2.THRESH_TOZERO_INV
2、中值滤波 cv2.medianBlur(src, ksize)
3、高斯滤波 cv2.GaussianBlur(src, ksize, sigmaX)
1、腐蚀 cv2.erode(src, kernel, iterations)
2、膨胀 cv2.dilate(src, kernel, iterations)
3、开运算 cv2.morphologyEx(src, cv2.MORPH_OPEN, kernel)
4、闭运算 cv2.morphologyEx(src, cv2.MORPH_CLOSE, kernel)
import numpy as np
import matplotlib.pyplot as plt
import cv2
img = cv2.imread("图像路径")
- 读取原图:cv.IMREAD_UNCHANGED
- 读取原图的灰度图:cv.IMREAD_GRAYSCALE
- 读取原图的彩图:cv.IMREAD_COLOR
cv2.imshow("指定显示图片名称",读取的图片对象)
cv2.imwrite(‘保存路径',读取的图片对象)
cv2.waitKey(delay)
delay > 0
– 等待 delay 毫秒delay < 0
– 等待键盘单击delay = 0
– 无限等待delay = null
– 等待键盘单击
cv2.destroyAllWindows()
print(g.shape)
print(i.shape)
print(g.size)
print(i.size)
print(g.dtype)
print(i.dtype)
px = image[水平方向像素, 竖直方向像素]
print("R:", image[水平像素, 竖直像素 -1])
print("G:", image[水平像素, 竖直像素, 1])
print("B:", image[水平像素, 竖直像素, 0])
R通道,G通道,B通道、红绿蓝三种不同的颜色通道
image[像素横坐标, 像素纵坐标] = [255, 255, 255]
result = cv2.resize(src, (160,160))
result = cv2.resize(src, (int(cols * 0.6), int(rows * 1.2)))
result = cv2.resize(src, None, fx=0.5, fy=0.5)
src 表示原始图像;
dsize 表示缩放大小;
fx和fy 也可以表示缩放大小倍数,他们两个(dsize或fx/fy)设置一个即可实现图像缩放
M = cv2.getRotationMatrix2D((cols/2, rows/2), 30, 1)
#参数分别为:旋转中心、旋转度数、scale缩放比例
rotated = cv2.warpAffine(src, M, (cols, rows))
#参数分别为:原始图像、旋转参数 和 原始图像宽高
dst = cv2.flip(src, flipCode)
src 表示原始图像
flipCode 表示翻转方向
M = np.float32([[1, 0, x], [0, 1, y]])
shifted = cv2.warpAffine(image, M, (image.shape[1], image.shape[0]))
三、图像阈值化 threshold()
ret,thresh1=cv2.threshold(GrayImage,127,255,cv2.THRESH_BINARY)
像素灰度值>thresh,设为最大灰度值
像素灰度值
Original: https://blog.csdn.net/qq_51377150/article/details/125961414
Author: 古娜拉黑暗之神#
Title: 图像识别基础代码汇总(python+opencv)
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/519110/
转载文章受原作者版权保护。转载请注明原作者出处!