为了寻找美,我决定对美女图片进行图像边缘化处理

前言:

前几日发表了在matlab进行简单的图像边缘处理的文章,后来继续进行了相应的学习,决定还是回归python环境跑一下opencv进行图像边缘检测的处理。对其有兴趣的可以看我上一篇的博客

图像处理边缘处理:Roberts算子和canny算子,对圆与矩阵进行识别_靳小锅er的博客-CSDN博客

图像分析资料:

1.灰度图:

灰度图是只含有黑白颜色,和0~255亮度等级的图片。灰度图具有 存储小,其亮度值就是256色调色板索引号, 从整幅图像的整体和局部的色彩以及亮度等级分布特征来看,灰度图描述与彩色图的描述是一致的特点。因此很多真彩色图片的分析,第一步就是转换为灰度图,然后再进行分析。

2. Sobel算子

sobel算子主要用于获得数字图像的一阶梯度,常见的应用和物理意义是边缘检测。

算子使用两个33的矩阵(图1)算子使用两个33的矩阵(图1)去和原始图片作卷积,分别得到横向G(x)和纵向G(y)的梯度值,如果梯度值大于某一个阈值,则认为该点为边缘点

3.拉普拉斯算子

在图像处理,我们知道经常把Laplace算子作为边缘检测之一,也是工程数学中常用的一种积分变换。将原始图像通过拉普拉斯变换后增强了图像中灰度突变处的对比度,使图像中小的细节部分得到增强并保留了图像的背景色调,使图像的细节比原始图像更加清晰。基于拉普拉斯变换的图像增强已成为图像锐化处理的基本工具。

4.Canny算子

Canny边缘检测的效果是很显著的。相比普通的梯度算法大大抑制了噪声引起的伪边缘,而且是边缘细化,易于后续处理。对于对比度较低的图像,通过调节参数,Canny算法也能有很好的效果。

代码部分:

import cv2
import matplotlib.pyplot as plt
#读取图像信息
img0 = cv2.imread('C:\\Users\\Lenovo\\Desktop\\Pic1_2.jpg')
img1 = cv2.resize(img0, dsize=None, fx = 0.5, fy = 0.5)
img2 = cv2.cvtColor(img1, cv2.COLOR_BGR2GRAY)
cv2.imwrite('C:\\Users\\Lenovo\\Desktop\\Gray.jpg',img2)   #保存灰度图
h, w = img1.shape[:2]
print(h, w)
cv2.namedWindow("GREY")
cv2.imshow("GREY", img1)
cv2.waitKey(delay = 0)
#Sobel 算子
img3 = cv2.Sobel (img2, cv2.CV_64F, 0, 1, ksize=5)
cv2.namedWindow("Sobel")
cv2.imshow("Sobel", img3)
cv2.waitKey(delay = 0)
#Laplacian 算子
img7 = cv2.Laplacian(img2, cv2.CV_64F)
cv2.namedWindow("Laplacian")
cv2.imshow("Laplacian", img7)
cv2.waitKey(delay = 0)
#canny 算子
img4 = cv2.Canny(img2, 100, 200)
cv2.namedWindow("Canny")
cv2.imshow("Canny", img4)
cv2.waitKey(delay = 0)

撰写代码时遇到的问题:

CV读取图片所在位置失败:

解决方法:Python 中 'unicodeescape' codec can't decode bytes in position XXX: trun错误解决方案_一路彷徨的专栏-CSDN博客_unicodeescape

代码效果展示:

 

  • 18
    点赞
  • 64
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 12
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

靳小锅er

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值