引言
在觀察OpenCV中某個(gè)函數(shù)在不同參數(shù)的情況下,所得到的效果的時(shí)候,我之前是改一次參數(shù)運(yùn)行一次,這樣做起來操作麻煩,效率低下。為了更便捷的觀察參數(shù)變化時(shí)帶來的處理效果改變 可以使用滑動(dòng)條來改變參數(shù)
具體思路
- 使用cv2.createTrackbar()創(chuàng)建滑動(dòng)條,有幾個(gè)參數(shù)就創(chuàng)建幾個(gè)
- 對(duì)每個(gè)參數(shù)定義回調(diào)函數(shù)
- 在回調(diào)函數(shù)中顯示圖片
注意 滑動(dòng)條的窗口名稱 要與 圖片顯示的窗口名字相同
代碼實(shí)現(xiàn)
import cv2 d = 0 color = 0 space = 0 def change_d(x): d = x blur = cv2.bilateralFilter(img,d,color,space) cv2.imshow("myImg",blur) def change_color(x): color = x blur = cv2.bilateralFilter(img,d,color,space) cv2.imshow("myImg",blur) def change_space(x): space = x blur = cv2.bilateralFilter(img,d,color,space) cv2.imshow("myImg",blur) img = cv2.imread('car2.jpeg') cv2.namedWindow('myImg') cv2.createTrackbar('d','myImg',1,500,change_d) cv2.createTrackbar('color','myImg',1,500,change_color) cv2.createTrackbar('space','myImg',1,500,change_space) while(1): k = cv2.waitKey(1)&0xFF if k==27: break d = cv2.getTrackbarPos('d','myImg') color = cv2.getTrackbarPos('color','myImg') space = cv2.getTrackbarPos('space','myImg') cv2.destroyAllWindows()
效果展示
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
