计算机视觉CV理论基础_笔记02

越叠加越黑 

 越叠加越白 

每张图都有长宽高,然后三层叠起来 。

 混色操作就是两张图的像素点进行相加平均 

 不要用大卷积核去卷积一张小的图片

 把椒盐噪声 黑点和白点随机分布在这张图片上

标准差代表了是尖锐的高峰还是平缓的高峰 不同方向上的一阶导数拼到一块就是梯度。

 边缘明显的特征被找出,两张图叠加在了一起

大尺度上面找小特征,小尺度上找明显的特征 原图先高斯模糊再下采样,变换后的图先上采样再高斯模糊,两者相减的图为拉普拉斯金字塔

变小的图变大时先上采样再高斯模糊,然后加上拉普拉斯金字塔即为原图。

拉普拉斯金字塔就是高频信息的保存

时域上的叠加 频域上的叠加 越远离中心主体的部分,频率就越高,去掉高频的就只剩下中心主体的部分,反过来就只剩下外面高频的部分。

随着时间的变化,频率会变密;无法判断原图到底是如何叠加的 频率分辨率高的时候时间分辨率一定低,反之。

# f1
import cv2
import numpy as np
import matplotlib.pyplot as plt

img = cv2.imread('/others/opencv.png',0) #直接读为灰度图像
for i in range(2000): #添加点噪声
    temp_x = np.random.randint(0,img.shape[0])
    temp_y = np.random.randint(0,img.shape[1])
    img[temp_x][temp_y] = 255

blur_1 = cv2.GaussianBlur(img,(5,5),0)

blur_2 = cv2.medianBlur(img,5)

plt.subplot(1,3,1),plt.imshow(img,'gray')#默认彩色,另一种彩色bgr
plt.subplot(1,3,2),plt.imshow(blur_1,'gray')
plt.subplot(1,3,3),plt.imshow(blur_2,'gray')
plt.show()

# f2
import numpy as np
import cv2 as cv
from matplotlib import pyplot as plt
img = cv.imread('/others/dave.png',0)
laplacian = cv.Laplacian(img,cv.CV_64F)
sobelx = cv.Sobel(img,cv.CV_64F,1,0,ksize=5)
sobely = cv.Sobel(img,cv.CV_64F,0,1,ksize=5)
plt.subplot(2,2,1),plt.imshow(img,cmap = 'gray')
plt.title('Original'), plt.xticks([]), plt.yticks([])
plt.subplot(2,2,2),plt.imshow(laplacian,cmap = 'gray')
plt.title('Laplacian'), plt.xticks([]), plt.yticks([])
plt.subplot(2,2,3),plt.imshow(sobelx,cmap = 'gray')
plt.title('Sobel X'), plt.xticks([]), plt.yticks([])
plt.subplot(2,2,4),plt.imshow(sobely,cmap = 'gray')
plt.title('Sobel Y'), plt.xticks([]), plt.yticks([])
plt.show()

# f3
import cv2 as cv
import numpy as np
from matplotlib import pyplot as plt
img = cv.imread('/others/opencv.png',0)
f = np.fft.fft2(img)
fshift = np.fft.fftshift(f)
magnitude_spectrum = 20*np.log(np.abs(fshift))
plt.subplot(121),plt.imshow(img, cmap = 'gray')
plt.title('Input Image'), plt.xticks([]), plt.yticks([])
plt.subplot(122),plt.imshow(magnitude_spectrum, cmap = 'gray')
plt.title('Magnitude Spectrum'), plt.xticks([]), plt.yticks([])
plt.show()

import cv2
import matplotlib.pyplot as plt

img = cv2.imread('timg.jpg',0) #直接读为灰度图像
res = cv2.equalizeHist(img)

clahe = cv2.createCLAHE(clipLimit=2,tileGridSize=(10,10))
cl1 = clahe.apply(img)

plt.subplot(131),plt.imshow(img,'gray')
plt.subplot(132),plt.imshow(res,'gray')
plt.subplot(133),plt.imshow(cl1,'gray')

plt.show()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

王泽邦_bill

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

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

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

打赏作者

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

抵扣说明:

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

余额充值