#! usr/bin/python
# coding=utf-8
import numpy as np
import cv2
from scipy import ndimage
# opencv 滤波器
image = cv2.imread('test.jpg', 0)
# kernel_3x3 = np.array([[-1, -1, -1], [-1, 8, -1], [-1, -1, -1]])
# kernel_5x5 = np.array([[-1, -1, -1, -1, -1],
# [-1, 1, 2, 1, -1],
# [-1, 2, 4, 2, -1],
# [-1, 1, 2, 1, -1],
# [-1, -1, -1, -1, -1]])
# k3 = ndimage.convolve(image, kernel_3x3)
# k5 = ndimage.convolve(image, kernel_5x5)
# sigma = 0
# blurred = cv2.GaussianBlur(image, (11, 11), sigma)
# cv2.imshow('3*3', k3)
# cv2.imshow('5*5', k5)
# cv2.imshow('blurred', blurred)
lap = cv2.Laplacian(image, cv2.CV_8U)
sobel_x = cv2.Sobel(image, cv2.CV_16S, 1, 0)
sobel_y = cv2.Sobel(image, cv2.CV_16S, 0, 1)
abs_x = cv2.convertScaleAbs(sobel_x)
abs_y = cv2.convertScaleAbs(sobel_y)
sobel = cv2.addWeighted(abs_x, 0.5, abs_y, 0.5, 0)
canny = cv2.Canny(image, 10, 150)
cv2.imshow('lap', lap)
# cv2.imshow('sobel_x', sobel_x)
# cv2.imshow('sobel_y', sobel_y)
cv2.imshow('sobel', sobel)
cv2.imshow('canny', canny)
cv2.waitKey()
cv2.destroyAllWindow()
opencv 滤波器 边缘检测
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 【OpenCV入门教程之十二】OpenCV边缘检测:Canny算子, Sobel算子, Laplace算子, Sc...
- 前提:已经配好了opencv+Qt这里只讲如何使用api,不怎么讲算法原理 既然要用opencv的库,首先把相应的...