python opencv Intel Realsense 使用滑动条调整图片的曝光率
生活随笔
收集整理的這篇文章主要介紹了
python opencv Intel Realsense 使用滑动条调整图片的曝光率
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
# -*- coding: utf-8 -*-
"""
@File : 200113:測試跟蹤條tracebackbar().py
@Time : 2020/1/13 9:11
@Author : Dontla
@Email : sxana@qq.com
@Software: PyCharm
"""
import cv2
import numpy as np# 等比例調整圖像分辨率大小
def img_resize(image):height, width = image.shape[0], image.shape[1]width_new = 1280height_new = 720# 判斷圖片的長寬比率if width / height >= width_new / height_new:img_new = cv2.resize(image, (width_new, int(height * width_new / width)))else:img_new = cv2.resize(image, (int(width * height_new / height), height_new))return img_newdef nothing(x):pass# gamma函數處理
def gamma_trans(img, gamma):gamma_table = [np.power(x / 255.0, gamma) * 255.0 for x in range(256)] # 建立映射表gamma_table = np.round(np.array(gamma_table)).astype(np.uint8) # 顏色值為整數return cv2.LUT(img, gamma_table) # 圖片顏色查表。另外可以根據光強(顏色)均勻化原則設計自適應算法。img = cv2.imread('lena_test.jpg')
# img = cv2.imread('mianhua.jpg')
img_new = img_resize(img)
print(img_new.shape)
cv2.namedWindow('win')cv2.createTrackbar('Value of Gamma', 'win', 100, 1000, nothing)
# 創建滑塊,注冊回調函數 lambda x: None沒有滑動時
# cv2.createTrackbar('Value of Gamma', 'win', 100, 1000, lambda x: None)while True:s = cv2.getTrackbarPos('Value of Gamma', 'win')value_of_gamma = s * 0.01 # 壓縮gamma范圍,以進行精細調整img_gamma = gamma_trans(img_new, value_of_gamma)cv2.imshow('win', img_gamma)cv2.waitKey(1)
運行結果:
參考文章1:python opencv-批量調整圖片的曝光率
參考文章2:python opencv cv2.createTrackbar()方法 getTrackbarPos()方法 (創建窗口滑動條和獲取滑動條當前值)
參考文章3:opencv cv2.LUT()(使用查找表中的值填充輸出數組)
總結
以上是生活随笔為你收集整理的python opencv Intel Realsense 使用滑动条调整图片的曝光率的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: D435 pyrealsense 如何实
- 下一篇: pyrealsense2 frame_m