摘要:直方图是为了统计图像中每个像素灰度出现的概率,这是它的中心思想,也是它的基本原则。 所以它的横坐标是0-255,总共256种灰度等级。而纵坐标是出现的概率p。这是它的基本思想。 这个count中记录的就是我们当前灰度图像每一个像素值在每一个灰度等级下出现的概率。它总共有256个灰度等级。因为它计算出
阅读全文
摘要:import cv2 import numpy as np img = cv2.imread('image0.jpg',1) for i in range(200,300): # 直接修改像素值 从200画到300这样一个位置上 img[i,200] = (255,255,255)#当前这样一根线占三个像素 img[i,200+1] = (255,255,255) im...
阅读全文
摘要:我们使用直方图均衡化的时候,必须要对单通道进行处理。所以我们首先要完成通道的分解。我们要把原来的三通道分解成单通道。 split()方法。将彩色图片传递进去之后,它返回的就是一个三通道数据。我们分别把三通道数据为大家实现一下。 这样我们分别就有三个通道完成了直方图的均衡化。但是通道分解完之后我们要合
阅读全文
摘要:我们先通过opencv API调用的方式来实现这个功能。 RGB三种颜色通道它的直方图已经为大家绘制出来了。这就是彩色图片的直方图绘制。 在绘制的时候我们为了把坐标归一化, 必须要求出当前整个hist中所有数据所有像素它的最大值最小值以及它们各自的下标,并且把它进行归一化处理。处理完之后然后再将结果
阅读全文
摘要:图片滤波,噪声的去除 当前的这些效果,我们直接可以在美颜算法或者美颜相机中可以直接看到这些实用的案例。 RGB三种颜色的直方图,它有横纵两个坐标。其中横坐标描述的是0-255的颜色等级,总共两百五十六种。因为2^8=256,8位的颜色深度。纵坐标是每个颜色等级在整张图片上出现的概率。注意我们纵坐标上
阅读全文
摘要:import cv2 import numpy as np img = cv2.imread('image0.jpg',1) font = cv2.FONT_HERSHEY_SIMPLEX cv2.rectangle(img,(200,100),(500,400),(0,255,0),3) # 1 dst 2 文字内容 3 坐标 4 5 字体大小 6 color 7 粗细 8 line typ...
阅读全文
摘要:import cv2 import numpy as np newImageInfo = (500,500,3)#定义一个元组,描述图片的宽高以及颜色深度信息 dst = np.zeros(newImageInfo,np.uint8)#目标图片 #1 dst 当前的目标图片 2 左上角起始点 3 右下角 4 颜色 5 是否fill(填充) #如果是-1,表明矩形框中的内容是需要填充的. cv2...
阅读全文
摘要:import cv2 import numpy as np newImageInfo = (500,500,3)#描述图片的宽高信息 颜色深度为3,表明它是一个RGB的彩色图片 dst = np.zeros(newImageInfo,np.uint8)#定义一个图片的数据类型np.uint8 # line # 绘制线段 1 dst 2 begin 3 end 4 color cv2.lin...
阅读全文
摘要:灰度图片和彩色图片,它们的颜色维度是不一样的。彩色图片每一个颜色是三维的,分别是RGB三种颜色来组成。 通过opencv API的方法来把彩色图片转化为灰度图片。 灰度图片实现的算法原理:通过RGB取均值的方式将彩色图片转化为灰度图片。还介绍了一个比较著名的心理学公式:gray = r*0.299+
阅读全文
摘要:第三步灰度等级的划分。第四步灰度段中像素的个数统计。
阅读全文
摘要:我们通过查找表查找一组新的RGB。用新的RGB来代替原来像素值的过程。如果大家不想做表的话可以用一些简单的公式来进行颜色映射。用公式的方法可能无法表达一些更为复杂的效果。因为颜色效果越复杂,那么利用公式进行拟合的时候难度就越大,甚至拟合之后的计算量要远远超过查找表。
阅读全文
摘要:150就是当前的灰度值,边沿细节就是我们的相邻像素之差。
阅读全文
摘要:图片卷积和矩阵运算不是一回事。矩阵是行列式相乘。
阅读全文
摘要:# dst = src1*a+src2*(1-a) a=0.3 1-a=0.7 import cv2 import numpy as np img0 = cv2.imread('image0.jpg',1) img1 = cv2.imread('image1.jpg',1) imgInfo = img0.shape height = imgInfo[0] width = imgInfo[1] ...
阅读全文
摘要:import cv2 import numpy as np import random img = cv2.imread('image2.jpg',1) imgInfo = img.shape height = imgInfo[0] width = imgInfo[1] dst = np.zeros((height,width,3),np.uint8)#为什么我们总是把高度放在第一位,因为我...
阅读全文
摘要:import cv2 import numpy as np img = cv2.imread('image0.jpg',1) imgInfo = img.shape height = imgInfo[0] width = imgInfo[1] for m in range(100,300): for n in range(100,200): # pixel ->10*1...
阅读全文
摘要:这一行是彩色图片的灰度处理,我们不需要进行灰度处理,我们需要处理的就是彩色图片。 这是彩色图片的颜色反转,有点类似于我们照相机上的底板效果。分成两种:灰度图像的颜色反转和彩色图像的颜色反转。二者都是用当前的最大值减去当前的像素值。
阅读全文
摘要:# 1 灰度 最重要 2 基础 3 实时性 # 定点-》浮点 +- */ >> # r*0.299+g*0.587+b*0.114 import cv2 import numpy as np img = cv2.imread('image0.jpg',1) imgInfo = img.shape height = imgInfo[0] width = imgInfo[1] # RGB R=G...
阅读全文
摘要:import cv2 import numpy as np img = cv2.imread('image0.jpg',1) imgInfo = img.shape height = imgInfo[0] width = imgInfo[1] # RGB R=G=B = gray (R+G+B)/3 dst = np.zeros((height,width,3),np.uint8) for ...
阅读全文