簡體   English   中英

如何在Android Native OpenCV的縱向視圖中使用正面相機

[英]how to use frontal camera in portrait view with Android Native OpenCV

我試圖在Android中使用原生OpenCV(最新版本:OpenCV-2.4.7-android-sdk)。 OpenCV提供的所有樣本都使用后置攝像頭和橫向視圖。 我需要做以下更改:

  1. 正面相機
  2. 肖像
  3. 錄視頻

首先我添加代碼“mOpenCvCameraView.setCameraIndex(1);” 使用正面相機。 它工作,但屏幕上顯示的圖像旋轉(頭朝下)。 我必須在OpenCV中使用翻轉功能才能正確顯示。 但是,圖像數據也將被翻轉。 那就是我想做圖像處理。 我必須進行轉置和翻轉操作。 我嘗試了這一步。 這真的很耗時。 即使我什么都不做,視頻也不是實時的。

第二,為了避免翻轉過程,我嘗試通過“android:screenOrientation =”portrait“”修改XML文件來使用縱向視圖。 它也有效,但問題是,只有部分圖像可以顯示在屏幕上。 它看起來像是裁剪的圖像。 這個問題很常見。 我google了很多但仍無法找到解決方案。 我發現如果我在Android中使用CameraView類,它將使用默認的相機App。 它很好但我不知道如何操作OpenCV的圖像數據,因為我是Jave / Android的新手。

最后,我想將處理過的圖像保存到視頻中。 我注意到OpenCV不提供此功能。

有人可以幫我解決這個問題嗎? 謝謝。

你可以在這里查看我的解決方案

我只是在輸入“onCameraFrame”事件后操縱圖像。

簡而言之:我改變了輸入矩陣,翻轉它並改變大小以適應屏幕。

希望這是有幫助的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM