需要源码请点赞关注收藏后评论区留言私信~~~
一、零处理
零处理会将某一个范围内的像素值变为0,并允许范围之外的像素保持原值,零处理包括低于零处理和超出阈值零处理
低于阈值零处理
该处理将低于或者等于阈值的像素值变为0,大于阈值的像素值保持原值
import cv2 img = cv2.imread("black.png", 0) # 将图像读成灰度图像 t5, dst5 = cv2.threshold(img, 127, 255, cv2.THRESH_TOZERO) # 低于阈值零处理 cv2.imshow('img', img) # 显示原图 cv2.imshow('dst5', dst5) # 低于阈值零处理效果图 cv2.waitKey() # 按下任何键盘按键后 cv2.destroyAllWindows() # 释放所有窗体
上述图像中低于或者等于127的区域彻底变黑,像素值高于127的保持渐变效果
超出阈值零处理
该处理将大于阈值的像素值变为0,小于或者等于阈值的像素值保持原值
import cv2 img = cv2.imread("black.png", 0) # 将图像读成灰度图像 t6, dst6 = cv2.threshold(img, 127, 255, cv2.THRESH_TOZERO_INV) # 超出阈值零处理 cv2.imshow('img', img) # 显示原图 cv2.imshow('dst6', dst6) # 超出阈值零处理效果图 cv2.waitKey() # 按下任何键盘按键后 cv2.destroyAllWindows() # 释放所有窗体
彩色图像会呈现出一种混乱的效果
二、截断处理
截断处理也叫做截断阈值处理,该处理将图像中大于阈值的像素值变为和阈值一样的值,小于或者等于阈值的像素保持原值
import cv2 img = cv2.imread("black.png", 0) # 将图像读成灰度图像 t1, dst1 = cv2.threshold(img, 127, 255, cv2.THRESH_BINARY) # 二值化阈值处理 t7, dst7 = cv2.threshold(img, 127, 255, cv2.THRESH_TRUNC) # 截断处理 cv2.imshow('dst1', dst1) # 展示二值化效果 cv2.imshow('dst7', dst7) # 展示截断效果 cv2.waitKey() # 按下任何键盘按键后 cv2.destroyAllWindows() # 释放所有窗体
图像经过截断处理后,整体颜色都会变暗,彩色图像经过截断处理后,在降低亮度的同时还会让浅颜色区域的颜色变得更浅
创作不易 觉得有帮助请点赞关注收藏~~~