Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android Camera 實時濾鏡(八)

Android Camera 實時濾鏡(八)

編輯:關於Android編程

一、Android Camera可以做哪些?

1、功能

拍攝相片 視頻錄制 取景器(掃描類應用,如人臉識別,名片識別,條形碼識別)

2、根據Camera API實現自己的拍照程序,共7步

Created with Rapha?l 2.1.21.初始化 SurfaceHolder2.相機實例 SurfaceCreated3.回調 SurfaceChanged4.清理 SurfaceDestroyed5.布局 SurfaceView6.按鈕 添加拍照按鈕

二、Camera Preview是什麼?

這裡寫圖片描述
攝像頭返回的RAW數據經過isp處理後形成yuv數據,android系統將該數據繪制到取景區上,不斷繪制幀數據形成實時預覽數據。

三、如何獲取Camera Preview中的數據?

Camera.PreviewCallback setPreviewCallback
屏幕上顯示一個新的預覽幀時調用onPreviewFrame方法(時時獲取) setPreviewCallbackWithBuffer
其與setPreviewCallback的工作方式相同,但要求指定一個字節數
組作為緩沖區,用於預覽圖像數據(addCallbackBuffer)

四、Android Camera 實時濾鏡怎麼做?

Created with Rapha?l 2.1.20.取景區大小設置為1像素1.取景區獲取預覽幀數據yuv2.獲取來的YUV420SP與RGB進行轉換3.進行濾鏡算法渲染4.將處理後的圖層繪制於屏幕上

YUV轉RGB的算法,轉換的公式一般如下,也是線性的關系:
R = Y + 1.14V
G = Y - 0.39U - 0.58V
B = Y + 2.03U

這裡寫圖片描述系統性能

如何優化?
- 提高流程度
圖像渲染采用OpenGL ES SurfaceTexture
- 提高性能
GPU優化

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved