Re: [問題] Python cv2如何取ROI

作者: backprog (back-propagation)   2017-09-01 11:21:26
※ 引述《weihan0405 (blue)》之銘言:
: 版大高手們,小弟最近用Python + opencv在實作上有個問題想請教....
: 以下為我的dataset如附圖,假設resize完每張(400*300),有很多張人的走動或是坐著
: 等等
: http://i.imgur.com/W1AUaBH.jpg
: 我已對它做完影像處理後,我該如何取ROI,針對每張圖的白人部分取出我要的部分(假
: 設粉紅框框100*100)?
原 PO 應該是從 C++ 轉過來的 opencv user ?
opencv for python 沒有像 C++ 那樣自訂這麼複雜的資料結構,
影像用 numpy.ndarray 儲存就可以直接處理,
所以不用像 C++ 還需要呼叫特定函式取 ROI,
只需要用一般 python 存取 array 的方法就好。
roi = raw_img[y:y+h, x:x+w]
x,y :ROI 在 raw image 之中的左上角座標
w,h :ROI 本身寬高
作者: weihan0405 (blue)   2017-09-02 20:55:00
感謝你的回覆:)其實我知道它用array方式可以存ROI可能我寫的不清楚,我是想問說根據我不同的圖,可能取出的框(ROI)有的長有的寬,不同大小那這樣......請問我該怎麼"統一"讓我取出的ROI存成同樣大小的圖(假設64*64).........用cv2.resize嗎?但他好像就會變寬不成比例的樣子
作者: hutdris   2017-09-03 01:33:00
那你先開一張64乘64的全黑圖,把你的roi區域置中貼上?
作者: weihan0405 (blue)   2017-09-03 01:59:00
恩恩我有想到這個,但我後來用別的方式好像解決了,謝謝你:)

Links booklink

Contact Us: admin [ a t ] ucptt.com