图像处理
qq_34725005
这个作者很懒,什么都没留下…
展开
-
python openCV 同态滤波实现
python openCV 同态滤波实现def homofilter(I): plt.subplot(1,2,1),plt.imshow(I),plt.title(‘原始图像’) I = np.double(cv2.cvtColor(I,cv2.COLOR_RGB2GRAY)) m,n = I.shape rL = 0.5 rH = 2 ...原创 2018-09-13 17:21:50 · 7596 阅读 · 5 评论 -
数字图像处理 直方图均衡化
import matplotlib.pyplot as pltimport numpy as npimport cv2def convert(r): x = np.zeros([256]) for i in range(r.shape[0]): for j in range(r.shape[1]): x[r[i][j]]+=1 ...原创 2019-02-18 10:20:11 · 394 阅读 · 0 评论 -
数字图像处理 对比度增强
import cv2import numpy as npdef convert(r): s = np.empty(r.shape,dtype=np.uint8) for j in range(r.shape[0]): for i in range(r.shape[1]): s[j][i]=(r[j][i]/255)**0.67*255...原创 2019-02-17 21:15:44 · 809 阅读 · 0 评论 -
数字图像处理 水印
简单可见水印简单可见水印由如下公式生成其中控制水印衬底的相对可见性,f为衬底,w为水印图片。import scipy.miscimport cv2im = cv2.imread('jsy.jpg')im_water = cv2.imread('sy.png')for x in range(im_water.shape[0]): for y in range(im_wat...原创 2019-02-22 19:41:55 · 2383 阅读 · 1 评论 -
数字图像处理 补色与反色
import numpy as npimport cv2im = cv2.imread('tetet.jpg')im_converted_mat = np.zeros_like(im, dtype=np.uint8)for x in range(im.shape[0]): for y in range(im.shape[1]): # 补色公式max(r,g,b)...原创 2019-02-22 17:23:42 · 2859 阅读 · 2 评论 -
数字图像处理 噪声
import matplotlib.pyplot as pltimport numpy as np#高斯噪声:均值为0,标准差为64x1 = np.random.normal(loc=0, scale=64, size=(256, 256))#瑞利噪声:(2/b)**0.5为1x2 = np.random.rayleigh(scale=64, size=(256, 256))#伽马噪...原创 2019-02-22 17:06:56 · 643 阅读 · 0 评论 -
数字图像处理 高通滤波
import numpy as npimport cv2def convert_2d(r): r_ext = np.zeros((r.shape[0] * 2, r.shape[1] * 2)) for i in range(r.shape[0]): for j in range(r.shape[1]): r_ext[i][j] = r...原创 2019-02-22 16:42:03 · 3321 阅读 · 1 评论 -
数字图像处理 低通滤波
#理想低通滤波import numpy as npimport cv2def convert_2d(r): r_ext = np.zeros((r.shape[0] * 2, r.shape[1] * 2)) for i in range(r.shape[0]): for j in range(r.shape[1]): r_ext[i...原创 2019-02-22 16:17:26 · 1159 阅读 · 0 评论 -
数字图像处理 高斯模糊
import mathimport numpy as npimport scipy.signalimport cv2def get_cv(r, sigma): return 1 / (2 * math.pi * sigma ** 2) * math.exp((-r ** 2) / (2 * sigma ** 2))def get_kernel(): radius, s...原创 2019-02-22 10:29:28 · 864 阅读 · 0 评论 -
数字图像处理 锐化滤波
import numpy as npimport scipy.signalimport cv2def convert_2d(r): kernel = np.array([ [0,-1,0], [-1,5,-1], [0,-1,0] ]) s = scipy.signal.convolve2d(r,kernel,mode...原创 2019-02-21 21:45:18 · 1710 阅读 · 0 评论 -
数字图像处理 中值滤波
import numpy as npimport scipy.ndimageimport cv2def convert_2d(r): n = 10 s = scipy.ndimage.median_filter(r, (n, n)) return s.astype(np.uint8)def convert_3d(r): s_dsplit = [] ...原创 2019-02-21 21:07:45 · 1210 阅读 · 0 评论 -
数字图像处理 均值滤波
import numpy as npimport cv2import scipy.signaldef convert_2d(r): n = 3 kernel = np.ones((n, n)) / n ** 2 s = scipy.signal.convolve2d(r,kernel,mode='same',boundary='symm') return s...原创 2019-02-21 20:50:23 · 1053 阅读 · 0 评论 -
数字图像处理 加性高斯白噪声
import numpy as npimport matplotlib.pyplot as pltimport cv2def convert_2d(r): s = r + np.random.normal(0, 64, r.shape) if np.min(s) >= 0 and np.max(s) <= 255: return s; s...原创 2019-02-21 20:28:10 · 2675 阅读 · 1 评论 -
理想高通滤波实现 python opencv
理想高通滤波实现 python opencvimport numpy as np import cv2 from matplotlib import pyplot as pltplt.rcParams[‘font.sans-serif’]=[‘SimHei’] plt.rcParams[‘axes.unicode_minus’] = False I = cv2.imread(‘ca...原创 2018-09-13 21:33:34 · 2842 阅读 · 0 评论 -
数字图像处理 图像减法
import numpy as npimport cv2def convert(r, h): s = r - h if np.min(s) >= 0 and np.max(s) <= 255: return s s = s - np.full(s.shape, np.min(s)) s = s * 255 / np.max(s) ...原创 2019-02-19 17:04:13 · 3725 阅读 · 0 评论