作者backprog (back-propagation)
看板Python
標題Re: [問題] Python cv2如何取ROI
時間Fri Sep 1 11:21:26 2017
※ 引述《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 本身寬高
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 125.227.205.43
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1504236089.A.0A0.html
推 weihan0405: 感謝你的回覆:)其實我知道它用array方式可以存ROI 09/02 20:55
→ weihan0405: 可能我寫的不清楚,我是想問說根據我不同的圖,可能 09/02 20:56
→ weihan0405: 取出的框(ROI)有的長有的寬,不同大小 09/02 20:56
推 weihan0405: 那這樣......請問我該怎麼"統一"讓我取出的ROI存成同 09/02 20:58
→ weihan0405: 樣大小的圖(假設64*64).........用cv2.resize嗎? 09/02 20:58
→ weihan0405: 但他好像就會變寬不成比例的樣子 09/02 20:58
推 hutdris: 那你先開一張64乘64的全黑圖,把你的roi區域置中貼上? 09/03 01:33
推 weihan0405: 恩恩我有想到這個,但我後來用別的方式好像解決了, 09/03 01:59
→ weihan0405: 謝謝你:) 09/03 01:59