栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

OpenCV

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

OpenCV

先上个图

灰度直方图反应不同灰度级在像素的个数。图像如果是RGB三层图像的话 通过某种算法转化为灰度值 本次转化的范围为[0-256]。
bins “堆”这里指灰度级
pixels “像素点”

代码

import cv2
import matplotlib.pyplot as plt
def show_image(image, title, pos):
 image_RGB image[:, :, ::-1] 
 plt.title(title)
 plt.subplot(2, 3, pos)
 plt.imshow(image_RGB)
def show_histogram(hist, title, pos, color):
 plt.title(title)
 plt.subplot(2, 2, pos) 
 plt.xlabel( Bins ) # 横轴信息
 plt.ylabel( Pixels ) # 纵轴信息
 plt.xlim([0, 256]) # 范围
 plt.plot(hist, color color) # 绘制直方图
def main():
 # 5 创建画布
 plt.figure(figsize (15, 6)) # 画布大小
 plt.suptitle( Gray Image Histogram , fontsize 14, fontweight bold ) # 设置标题形式
 img cv2.imread( 4.jpg )
 img_gray cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
 hist_img cv2.calcHist([img_gray], [0], None, [256], [0, 256])
 img_BGR cv2.cvtColor(img_gray, cv2.COLOR_GRAY2BGR)
 show_image(img_BGR, BGR image , 1)
 show_histogram(hist_img, gray image histogram , 2, m )
 plt.show()
if __name__ __main__ :
 main()

附 官方matplotlib.pyplot文档

cv2.calcHist(images, channels, mask, histSize, ranges[hist[, accumulate]])

原图注意用list表示 例如 [img_gray]
通道注意[0]灰度 ;[0][1][2][3]rgb
mask范围none表示全图
histSize( bins ) 灰度级别取值有8 16 32 64 128 256 例如[ 256]
range表示强度范围 例如[0, 256]


图片得到了作者的许可 愿祖国强大

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/266637.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号