日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

016-OpenCV 图像对比度亮度调整

發(fā)布時(shí)間:2023/12/29 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 016-OpenCV 图像对比度亮度调整 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

學(xué)得不好,想到哪,寫到哪。
先說一個(gè)蠢得要命的問題。

就這,研究了好久,才突然發(fā)現(xiàn)應(yīng)該是img[i, j],不是[i:j],被自己蠢到哭,服了自己。以后寫代碼一定要注意細(xì)節(jié)!!!
接下來(lái)進(jìn)入主題,上代碼。

import cv2def nothing(a):pass''' cv2.imread(filename,flags) # filename為文件名,圖片與.py文件在一個(gè)文件夾時(shí)輸入文件名即可 # 不在一個(gè)文件夾時(shí)輸入圖片的路徑和名字 # flags為圖片的顏色類型,默認(rèn)為1,灰度圖像為0 ''' img = cv2.imread('1.jpg', 0) '''np.copy() # 數(shù)組拷貝,理解成備份原圖像就行 # 原圖像img, 備份圖像img1 # 原圖像隨便改,備份圖像還是初始的原圖像 ''' backup = img.copy() ''' cv2.namedWindow(winname,flags) # winname是窗口名字 # flags為窗口顯示方式,cv2.WINDOW_NORMAL為正常顯示,可以調(diào)整大小 # cv2.WINDOW_AUTOSIZE顯示原圖片的大小,用戶不能調(diào)整大小 ''' cv2.namedWindow('backup') '''cv2.createTrackbar(trackbarname, windowname, value, count, onChange) # 創(chuàng)建一個(gè)滑動(dòng)條 # trackbarname 滑動(dòng)條的名字 windowname 滑動(dòng)條所在窗口的名字 # value 滑動(dòng)塊所在位置 count 滑動(dòng)塊最大位置,最小默認(rèn)為0 # onChange 回調(diào)函數(shù)名 ''' cv2.createTrackbar('contrast', 'backup', 100, 500, nothing) cv2.createTrackbar('brightness', 'backup', 0, 255, nothing) while True:'''cv2.imshow(winname,mat)# winname為顯示的窗口# mat 需要顯示的圖像'''cv2.imshow('img', img)'''cv2.getTrackbarPos(trackbarname, winname)# 作用就是獲得當(dāng)前滑動(dòng)塊的位置# trackbarname 滑動(dòng)條的名字 windowname 滑動(dòng)條所在窗口的名字'''contrast = cv2.getTrackbarPos('contrast', 'backup')brightness = cv2.getTrackbarPos('brightness', 'backup')for i in range(0, img.shape[0]): # 外層循環(huán)讀行for j in range(0, img.shape[1]): # 內(nèi)層循環(huán)讀列'''對(duì)比度亮度調(diào)整原理:@#¥%……&……%¥#¥%……&*&……%#¥%……&# 簡(jiǎn)單一句話, y = a*x +b# y 調(diào)整后的像素 a 增益,控制圖像對(duì)比度# x 圖像原像素 b 偏置,控制圖像亮度# 得有溢出保護(hù),畢竟單個(gè)像素值最大為255,當(dāng)計(jì)算結(jié)果大于255時(shí),變?yōu)?55'''if int(img[i, j] * contrast * 0.01 + brightness) > 255:backup[i, j] = 255else:backup[i, j] = int(img[i, j] * contrast * 0.01 + brightness)cv2.imshow('backup', backup)if cv2.waitKey(1) & 0xFF == 27:break cv2.destroyAllWindows()

結(jié)果如下圖,可見二者亮度對(duì)比度不同。

總結(jié)

以上是生活随笔為你收集整理的016-OpenCV 图像对比度亮度调整的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。