3

python图像处理(prewitt算子)

 1 year ago
source link: https://blog.csdn.net/feixiaoxing/article/details/128781973
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

python图像处理(prewitt算子)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

        前面几章谈到了灰化、增强、旋转、滤波等内容,今天来谈一谈边缘检测。边缘检测是图像处理的重要内容。很多图像分割、图像识别的前一步就是边缘检测。某种意义上说,边缘检测的好坏决定了图像分割的成败。

        抛开今天的prewitt算子不谈,大家可以思考一下,怎么在一个图像中把一条竖线的边缘识别出来?或者换句话说,一条竖线,它的边缘有什么特征?

ccac1543bdea44d9ae5f43fa1a187d82.png

         假设我们自己需要设计这么一个算子的话,是不是可以通过某些突变的特征来检测边缘点。如果点位于白色区域或者黑色区域,很明显左右侧像素点是没有发生改变的。但是如果是直线上的边缘点,要么左侧是白色,右侧是黑色,要么左侧是黑色,右侧是白色,这样就可以很容易设计出一个算子,那就是[-1,0,1;-1,0,1;-1,0,1],这样中间这一侧的图像点就完全被忽略掉,用右侧的像素点减去左侧的像素点,累计之和赋值给中间的元素点即可,这样不就可以把直线边缘检测出来了。

        prewitt算子也是这么想的,如果用之前的lena图像做测试的话,那么效果是这样的,

文章知识点与官方知识档案匹配,可进一步学习相关知识

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK