色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

javacv開發詳解之調用本機攝像頭視頻

瀏覽:2日期:2022-08-14 08:59:14
前言

javacv開發包是用于支持java多媒體開發的一套開發包,可以適用于本地多媒體(音視頻)調用以及音視頻,圖片等文件后期操作(圖片修改,音視頻解碼剪輯等等功能),這里只使用最簡單的本地攝像頭調用來演示一下javacv的基礎功能

重要:

建議使用最新javaCV1.5版本,該版本已解決更早版本中已發現的大部分bug

javacv系列文章使用6個jar包:

javacv.jar,javacpp.jar,ffmpeg.jar,ffmpeg-系統平臺.jar,opencv.jar,opencv-系統平臺.jar。

其中ffmpeg-系統平臺.jar,opencv-系統平臺.jar中的系統平臺根據開發環境或者測試部署環境自行更改為對應的jar包,比如windows7 64位系統替換為ffmpeg-x86-x64.jar

為什么要這樣做:因為ffmpeg-系統平臺.jar中存放的是c/c++本地so/dll庫,而ffmpeg.jar就是使用javacpp封裝的對應本地庫java接口的實現,而javacpp就是基于jni的一個功能性封裝包,方便實現jni,javacv.jar就是對9個視覺庫進行了二次封裝,但是實現的功能有限,所以建議新手先熟悉openCV和ffmpeg這兩個C/C++庫的API后再來看javaCV思路就會很清晰了。

須知:

javacv系列文章默認音視頻處理使用ffmpeg,圖像處理使用opencv,攝像頭抓取使用opencv

javacv官方github維護地址:https://github.com/bytedeco/javacv

依賴配置說明

(注意:從其他地方下載的依賴包請積極開心的替換為官方jar包和博主提供jar包;如果使用其他jar包版本而導致出錯,不要急著找博主問為啥會報錯,先把jar包替換了再試試看)

maven和gradle方式如果想要減小依賴包大小,則需要手動進行排除不需要的平臺依賴即可

1.使用maven添加依賴

<dependency><groupId>org.bytedeco</groupId><artifactId>javacv-platform</artifactId><version>1.4.4</version></dependency>2.使用gradle添加依賴

dependencies { compile group: ’org.bytedeco’, name: ’javacv-platform’, version: ’1.4.4’ }3.使用本地jar包方式

最新版實在太大,需要下載全量包的請到官方github.com/bytedeco/javacv下載

建議使用maven或gradle方式構建項目。

jar包使用須知:

1、windows x64平臺用到的opencv依賴:opencv.jar;oepncv-windows-x86_64.jar(其他平臺替換為對應的jar包即可)

2、蘋果mac需要opencv-macosx-x86_64.jar3、linux平臺需要:opencv-linux-x86_64.jar  

4、安卓平臺arm架構的需要opencv-android-arm.jar ,基于x86的需要opencv-android-x86.jar

為什么不需要安裝opencv?

從javacv0.8開始,已經不需要本地安裝opencv,直接通過引用opencv對應的系統平臺的引用包即可。

(比如oepncv-windows-x86_64.jar就是典型的64位windows環境依賴包)

獲取攝像頭視頻

最終調用的攝像頭實時視頻圖像界面:

javacv開發詳解之調用本機攝像頭視頻

預覽本機攝像頭視頻圖像的簡單實現(由于之前csdn的注釋被屏蔽,重新精簡優化了代碼):

package cc.eguid.javacv; import javax.swing.JFrame; import org.bytedeco.javacv.CanvasFrame;import org.bytedeco.javacv.OpenCVFrameConverter;import org.bytedeco.javacv.FrameGrabber.Exception;import org.bytedeco.javacv.OpenCVFrameGrabber; /** * 調用本地攝像頭窗口視頻 * @author eguid * @date 2016年6月13日 * @since javacv1.2 */public class JavavcCameraTest{ public static void main(String[] args) throws Exception, InterruptedException{ OpenCVFrameGrabber grabber = new OpenCVFrameGrabber(0);//新建opencv抓取器,一般的電腦和移動端設備中攝像頭默認序號是0,不排除其他情況 grabber.start();//開始獲取攝像頭數據 CanvasFrame canvas = new CanvasFrame('攝像頭預覽');//新建一個預覽窗口 canvas.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //窗口是否關閉 while(canvas.isDisplayable()){ /*獲取攝像頭圖像并在窗口中顯示,這里Frame frame=grabber.grab()得到是解碼后的視頻圖像*/ canvas.showImage(grabber.grab()); } grabber.close();//停止抓取 }}

是不是很簡單,原本很復雜的流媒體操作,javaCV能夠幫助我們快速實現。

以上就是javacv開發詳解之調用本機攝像頭視頻的詳細內容,更多關于javacv調用本機攝像頭的資料請關注好吧啦網其它相關文章!

標簽: Java
相關文章:
主站蜘蛛池模板: 久久综合丁香 | 欧美成人亚洲欧美成人 | 久久久国产精品福利免费 | 亚洲在线观看 | 国产二区三区 | www.99在线观看 | 91精品手机国产露脸 | 国产午夜精品久久理论片小说 | 国产91啦| 欧美怡红院在线观看 | 99久久精品费精品国产一区二 | 欧美视频一二三区 | 天天看片天天爽_免费播放 天天看夜夜 | 国产亚洲精品资源一区 | 国产精品久久久久久久久久久威 | 欧美aaa| 国产男女爽爽爽爽爽免费视频 | 免费播放巨茎人妖不卡片 | 亚洲男人的性天堂 | 久久久在线视频精品免费观看 | 三级中文字幕永久在线视频 | 在线视频日韩精品 | 欧美大片a一级毛片视频 | 久久亚洲一级α片 | 在线一区播放 | 亚洲成年www| 国产一级真人毛爱做毛片 | 亚洲成aⅴ人在线观看 | 曰韩三级| 久久se精品一区精品二区 | 亚洲国产日韩女人aaaaaa毛片在线 | 日韩美女一级毛片 | 在线黄网 | 在线观看亚洲 | 亚洲专区一 | 国产网友自拍 | 国产成年视频 | 99精品视频在线播放2 | 日本加勒比视频在线观看 | 国产成人精品日本亚洲网站 | 日本一级特黄高清ab片 |