Open-CV是一个用来解决计算机视觉问题的Python库,在OpenCV中,所有的图像都被转换成Numpy数组。这使得它更容易与其他库(如Scipy和matplotlib)集成。OpenCV用于为计算机视觉应用提供通用的基础设施,并加速机器感知在商业产品中的使用。
使用OpenCV解决了许多应用,如人脸识别、自动检测和监视、人数(计数)、交互式艺术装置、制造过程中的异常检测、视频/图像搜索、对象识别、无人驾驶汽车导航和控制等等。
我们可以通过编写以下代码导入OpenCV库。
import cv2 as cv
读取图像
image = cv.imread('image.png')
提取图像的高度和宽度
h,w = image.shape[:2]
提取像素的RGB值
(B,G,R) = image[100,100] #we are extracting rgb value of the pixel 100,100
G = image[100,100,0] #the value of the G in the pixel 100,100
提取感兴趣区域
ROI = image[100:500,200:700]
在保持纵横比不变的情况下调整图像大小
ratio = 900/w #calculating the width and height
WH = (900,int(h*ratio)) #creating a tuple containing width and heigth
resizing = cv.resize(image,WH) #resizing the image
旋转图像
center = (w//2,h//2) #w and h are the width and height
matrix = cv.getRotationMatrix2D(center,-40,1.0)
rotated = cv.warpAffine(image,matrix,(w,h))
#warAffine() function transforms the source image using the rotation matrix. The newly defined x and y coordinates for the rotated image will be dst(x, y) = src(M11X + M12Y + M13, M21X + M22Y + M23)
我们可以在OpenCV中使用许多其他功能您可以参考以下链接来了解有关OpenCV的更多信息:-Link1,Link2。Link1 Link2
原创文章,作者:fendouai,如若转载,请注明出处:https://panchuang.net/2021/06/24/opencv-2/