AndroidDev 板


LINE

小弟是程設新手 最近對影像處理感興趣所以摸摸看 現在想要做一個用手機鏡頭的即時影像做背景相減 檢測差異處的程式 我參考 Opencv for Android 的第一個範例程式 內容主要是介紹 OpenCV 的 Camera 功能 這個範例裡面用下面這個函式載入鏡頭取得的影像以及return到手機畫面 public Mat onCameraFrame(CvCameraViewFrame inputFrame) { return inputFrame.rgba(); } 因為背景相減要兩張影像 所以我嘗試在這裡擷取前後幀影像 我用的方法是把上面的函式當作無窮迴圈 讀入第一張畫面之後先暫存 讀第二張影像之後再把第一張影像拿出來比對 而暫存的那張影像 理論上是一張不會動的影像 但我發現他還是會持續被更新 導致會跟第二張影像一模一樣 我覺得問題可能是出在 inputFrame 好像不能直接從這裡撈單張影像 我有查過資料 inputFrame 似乎是串流影像 不知道是不是因為這樣 所以我暫存的影像實際上是變成了影片片段 我有試過輸出暫存的影像(有設條件只存一次) 但輸出的影像還是會跟著鏡頭動 -------------------------------------------- 因為學淺不懂原理 煩請各位高手幫幫忙 如果問題敘述哪邊看不懂我可以在補充 --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.255.185.226
※ 文章網址: https://webptt.com/m.aspx?n=bbs/AndroidDev/M.1449675257.A.216.html
1F:推 soheadsome: 感覺是因為.rgba()會回傳某東西的參考 12/09 23:57
2F:→ soheadsome: 參考的東西在更新 你拿到的東西也會更新 12/09 23:58
※ 編輯: ab790815 (111.255.185.226), 12/10/2015 00:08:26
3F:→ ab790815: inputFrame.rgba()會變成Mat格式 rgba()只是以彩色輸出 12/10 00:11
4F:→ ab790815: 另外還有.gray() 以灰階輸出 12/10 00:12
5F:推 VSei: 設一個條件只存第三張影像然後show出來,其他不要,試試看。 12/10 08:16
6F:→ VSei: stream是很多張單張影像連續撥放(經由buffer),跟stream無關 12/10 08:19
7F:→ VSei: 函數已經return單張的image出來,要留住它需複製一份另外放 12/10 08:23
8F:→ VSei: 這個我做過,沒程式碼沒辦法幫忙更多,加油 12/10 08:43
9F:→ ab790815: 我測試的方式是 12/10 09:01
10F:→ ab790815: 宣告一個全域 Mat 跟用來計數的全域int 12/10 09:02
11F:→ ab790815: 計數器加在這個funtion裡面 12/10 09:02
12F:→ ab790815: 每run一次就++ 12/10 09:02
13F:→ ab790815: 我設條件 12/10 09:02
14F:→ ab790815: 計數器等於1的時候將第1幀影像存到 Mat 12/10 09:03
15F:→ ab790815: 然後把這個影像輸出到畫面 12/10 09:03
16F:→ ab790815: 理論上只會存一張影像 12/10 09:03
17F:→ ab790815: 且輸出的畫面是不會動的 12/10 09:03
18F:→ ab790815: 但結果是畫面還是會跟著鏡頭動 12/10 09:03
19F:→ ab790815: 我參考這個網站做的東西 12/10 09:13
20F:→ ab790815: http://python.jobbole.com/81593/ 12/10 09:13
21F:→ ab790815: 可是我取得的基底背景會不斷被更新 12/10 09:14
22F:→ ab790815: 以至於會跟後面抓的影像一模一樣 12/10 09:15
23F:→ VSei: 如果可以的話請您將程式碼張貼網站,方便大家幫忙debug 12/10 10:27
24F:→ VSei: 如果不方便請用ptt私信code,也許比較能幫忙,謝謝。 12/10 10:28
25F:推 z0furu: 請問樓主的範例是去哪看的?最近也有這個需求需要研究 12/10 13:13
26F:→ ab790815: To VSei:我找到解決辦法了,但原本的問題原因還是無解。 12/10 21:56
27F:→ ab790815: 因為程式碼被我改來改去,我正在還原原本錯誤的程式 12/10 21:57
28F:→ ab790815: 等我改好再跟你討論 感謝!! 12/10 21:58
29F:→ ab790815: To z0furu : 我參考的是OpenCV官方4android的範例 12/10 22:00
30F:→ ab790815: 他第一個範例只是介紹怎麼用Camera而已 12/10 22:01
31F:→ ab790815: 不知道您的需求是怎樣的功能? 12/10 22:01
32F:→ ab790815: 這是我節錄比較重點部分的code 12/10 23:30
33F:→ ab790815: http://pastebin.com/sS9JXrNv 12/10 23:30
34F:→ ab790815: 我希望印出一個不會動的影像,但結果是影像會一直被更新 12/10 23:42
35F:→ chenhaoftk: Camera=inputFrame.gray().clone()? 12/11 00:29
36F:→ ab790815: .clone() 好像只是複製框架,並沒有複製內容的樣子。 12/11 00:53
37F:推 VSei: 嗯,做出來了,code你參考看看。 12/11 14:39
38F:→ VSei: 做一個menu(或button也可以),去觸發count 12/11 14:43
39F:→ VSei: 畫面上開一個txtview去看count是否有正確運作 12/11 14:44
40F:→ VSei: 再弄一個ImageView先顯示一張圖,count觸發條件時,改變影像 12/11 14:46
41F:→ VSei: 就會知道camera是否有抓到值可以回傳或是沒抓到 12/11 14:47
42F:→ VSei: JavaCameraView會一直抓inputFrame.rgba() 12/11 14:50
43F:→ VSei: 顯示單張圖在ImageView可能在BaseLoaderCallback沒執行作用 12/11 14:52
44F:→ VSei: OpenCVLoader.initAsync不需要一直load,初始化 12/11 15:00
45F:推 Cycylno: 之前有碰過一點OpenCV,它的Mat基本上都是用參考的方式 12/11 19:22
46F:推 Cycylno: 所以你的影像才會一直連動。 12/11 19:27
47F:→ Cycylno: 看官方的documentation是說.clone()會複製出一份新的, 12/11 19:29
48F:→ Cycylno: 可是實際使用OpenCV4Android就是跟C++版不一樣... 12/11 19:30
49F:→ Cycylno: 感覺為了要在Android上運行,他們硬幹了很多東西... 12/11 19:32
50F:推 VSei: private Mat once = new Mat(); --> create一個新區域去放 12/11 22:01
51F:→ VSei: https://youtu.be/kivphxEL_m0 12/11 22:28







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:iOS站內搜尋

TOP