本文旨在让你快速入门opencv。
envscriptsactivate
激活环境,你会在C:UsersusernameDesktopopencv
之前看到小括号(env)出现。现在,只需使用pip安装OpenCV。
pip install opencv-python shape
来找到任何图像的形状,然后根据图像形状,可以增加或减小图像的大小。让我们看看示例。
import cv2 img = cv2.imread("images/img0.jpg") ##Choose any image print(img.shape) imgResize = cv2.resize(img,(224,224)) ##Decrease size imgResize2 = cv2.resize(img,(1024,1024)) ##Increase size cv2.imshow("Image",img) cv2.imshow("Image Resize",imgResize) cv2.imshow("Image Increase size",imgResize2) print(imgResize.shape) cv2.waitKey(0) 如果你不想对宽度和高度进行硬编码,也可以使用形状,然后使用索引来增加宽度和高度。
import cv2 img = cv2.imread("images/img0.jpg") ##Choose any image print(img.shape) shape = img.shape imgResize = cv2.resize(img,(shape[0]//2,shape[1]//2))##Decrease size imgResize2 = cv2.resize(img,(shape[0]*2,shape[1]*2)) ##Increase size cv2.imshow("Image",img) cv2.imshow("Image Resize",imgResize) cv2.imshow("Image Increase size",imgResize2) print(imgResize.shape) cv2.waitKey(0) cvtColor
,这里我们将cv2.COLOR_BGR2GRAY
作为参数传递。
imgGray = cv2.cvtColor(IMG,cv2.CODE) IMG: Original image CODE: Conversion code for Gray(COLOR_BGR2GRAY) Example imgGray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) 将图像转为HSV要将图像转换为HSV,我们可以使用函数cvtColor
,这里我们将cv2.COLOR_BGR2HSV
作为参数传递。它主要用于对象跟踪。
imgGray = cv2.cvtColor(IMG,cv2.CODE) IMG: Original image CODE: Conversion code for Gray(COLOR_BGR2HSV) Example imgHsv = cv2.cvtColor(img,cv2.COLOR_BGR2HSV) 图像模糊模糊用于去除图像中的多余噪声,也称为平滑,这是对图像应用低通滤波器的过程。要在Opencv中使用模糊,我们有一个函数GaussianBlur。
imgBlur = cv2.GaussianBlur(img,(sigmaX,sigmaY),kernalSize) kernalsize − A Size object representing the size of the kernel. sigmaX − A variable representing the Gaussian kernel standard deviation in X direction. sigmaY - same as sigmaX Exmaple imgBlur = cv2.GaussianBlur(img,(3,3),0) 边缘检测在OpenCV中,我们使用Canny边缘检测器来检测图像中的边缘,也有不同的边缘检测器,但最著名的是Canny边缘检测器。Canny边缘检测器是一种边缘检测算子,它使用多阶段算法来检测图像中的大范围边缘,它由John F. Canny在1986年开发。
imgCanny = cv2.Canny(img,threshold1,threshold2) threshold1,threshold2:Different values of threshold different for every images Example imgCanny = cv2.Canny(img,100,150) 膨胀膨胀是用来增加图像中边缘的大小。首先,我们定义一个大小为奇数(5,5)的核矩阵,然后利用核函数对图像进行放大。我们对Canny边缘检测器的输出图像进行了放大处理。
kernel = np.ones((5,5),np.uint8) ## DEFINING KERNEL OF 5x5 imgDialation = cv2.dilate(imgCanny,kernel,iterations=1) ##DIALATION 腐蚀腐蚀是扩张的反面,它用于减小图像边缘的尺寸。首先,我们定义一个奇数(5,5)的核矩阵大小,然后使用核对图像执行腐蚀。我们对Canny边缘检测器的输出图像施加腐蚀。
kernel = np.ones((5,5),np.uint8) ## DEFINING KERNEL OF 5x5 imgDialation = cv2.erode(imgCanny,kernel,iterations=1) ##EROSION 现在,在同一程序中将所有基础函数应用于Monalisa映像。全部0条评论
快来发表一下你的评论吧 !