使用opencv读入并显示一幅彩色图像,灰度化并显示,用canny算子得到图像边缘并显示

简介: 使用opencv读入并显示一幅彩色图像,灰度化并显示,用canny算子得到图像边缘并显示

要求步骤:

1.读入彩色图像,并显示;

2.将彩色图像灰度化,并显示;

3将灰度图像,用Canny边缘算子得到图像边缘,并显示。

import cv2
from matplotlib import pyplot as plt
img1=cv2.imread(r'C:\Users\hp\Pictures\Camera Roll\QQ.jpg') #原图为彩色图,可将第二个参数变为0,为灰度图
cv2.namedWindow("img",cv2.WINDOW_NORMAL)#命名窗口,并且大小可调节
cv2.resizeWindow("img", 400, 480)  #设置窗口大小
cv2.imshow("img",img1)
cv2.waitKey(0)  #该函数等待任何键盘事件指定的毫秒。如果您在这段时间内按下任何键,程序将继续运行。如果0被传递,它将无限期地等待一次敲击键。
cv2.destroyAllWindows()
img2=cv2.imread(r'C:\Users\hp\Pictures\Camera Roll\QQ.jpg') #原图为彩色图,可将第二个参数变为0,为灰度图
edges = cv2.Canny(img2,100,200)
plt.subplot(121),plt.imshow(img2,cmap = 'gray')
plt.title('yuan tu'), plt.xticks([]), plt.yticks([])
plt.subplot(122),plt.imshow(edges,cmap = 'gray')
plt.title('Canny bianyuanjiance'), plt.xticks([]), plt.yticks([])
plt.show()
#群970353786

结果:

1.png

1.png

相关文章
|
16天前
|
算法 计算机视觉
OpenCV高斯差分技术实现图像边缘检测
OpenCV高斯差分技术实现图像边缘检测
|
18天前
|
计算机视觉
OpenCV图像运动模糊
OpenCV图像运动模糊
17 0
|
18天前
|
计算机视觉
OpenCV图像阈值
OpenCV图像阈值
6 0
|
18天前
|
计算机视觉
OpenCV图像混合
OpenCV图像混合
14 0
|
18天前
|
计算机视觉 Python
OpenCV为图像扩边(填充)
OpenCV为图像扩边(填充)
16 0
|
18天前
|
计算机视觉 Python
轻松掌握opencv的8种图像变换
轻松掌握opencv的8种图像变换
|
18天前
|
算法 计算机视觉
【OpenCV】- 图像修复
【OpenCV】- 图像修复
|
18天前
|
Serverless 计算机视觉
【OpenCV】-图像的矩
【OpenCV】-图像的矩
|
18天前
|
算法 计算机视觉 Python
【OpenCV】-算子(Sobel、Canny、Laplacian)学习
【OpenCV】-算子(Sobel、Canny、Laplacian)学习
|
18天前
|
编解码 物联网 计算机视觉
【OpenCV】—图像金子塔与图片尺寸缩放
【OpenCV】—图像金子塔与图片尺寸缩放