1、javaCV截取usb摄像头图片

 /*** javacv在lunixUSB摄像头截图* @param usbDev 设备名称如:/dev/video0* @param filePath 路径*/public void screeUsbCamera(String usbDev,String filePath){long start=System.currentTimeMillis();try {avutil.av_log_set_level(avutil.AV_LOG_ERROR);OpenCVFrameGrabber grabber = new OpenCVFrameGrabber(usbDev);Integer width = 1920;Integer height = 1080;if (width != null && width > 1 && height != null && height > 1) {grabber.setImageWidth(width);grabber.setImageHeight(height);}grabber.setOption("rtsp_transport", "tcp");grabber.start();if (width == null || height == null) {height = grabber.getImageHeight();width = grabber.getImageWidth();}ByteArrayOutputStream outputStream=null;long total=0;Frame frame = null;while ((frame = grabber.grab()) != null ) {// TODO 将帧推送成流Java2DFrameConverter java2DFrameConverter = new Java2DFrameConverter();BufferedImage convert = java2DFrameConverter.convert(frame);outputStream = new ByteArrayOutputStream();ImageIO.write(convert, "jpg", outputStream);total=System.currentTimeMillis()-start;logger.info("usb截图时间为:"+total);grabber.close();// 停止抓取grabber.stop();grabber.release();logger.info("javacvUSB截图完成");break;}byte[] bytes = outputStream.toByteArray();FileUtil.writeBytes(bytes, filePath + "USB_" +total+ ".JPG");} catch (Exception e) {logger.info("javacv截图错误"+e);}}

2、javaCV截取网络摄像头图片

 /**** @param rtspURL:网络摄像头地址如:rtsp://admin:1234qwer@192.168.16.230:554* @param filePath:路径*/public void screenshot(String rtspURL,String filePath)  {try {long start=System.currentTimeMillis();long total=0;FFmpegFrameGrabber grabber = FFmpegFrameGrabber.createDefault(rtspURL);grabber.setOption("rtsp_transport", "tcp");grabber.setImageWidth(960);grabber.setImageHeight(540);grabber.start();ByteArrayOutputStream outputStream=null;Frame frame = grabber.grabImage();if (frame != null) {Java2DFrameConverter java2DFrameConverter = new Java2DFrameConverter();BufferedImage convert = java2DFrameConverter.convert(frame);outputStream = new ByteArrayOutputStream();ImageIO.write(convert, "jpg", outputStream);total=System.currentTimeMillis()-start;logger.info("网络摄像头截图时间为:"+total);grabber.close();// 停止抓取grabber.stop();grabber.release();}byte[] bytes = outputStream.toByteArray();FileUtil.writeBytes(bytes, filePath + "rtsp_" +total+ ".JPG");} catch (Exception e) {logger.info("截取网络摄像头图片失败"+e);}}

3、引入相关依赖

<dependency><groupId>org.bytedeco</groupId><artifactId>javacv-platform</artifactId><version>1.4.4</version></dependency>

使用javaCV截取摄像头图片相关推荐

  1. Python截取摄像头图片

    # 运行环境:python3.8 import os # pip install opencv-python==4.5.5.62 import cv2 import time # 解决id问题:htt ...

  2. JavaCV的摄像头实战之十二:性别检测

    欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 本文是<JavaCV的摄像头实战> ...

  3. JavaCV的摄像头实战之八:人脸检测

    欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 本文是<JavaCV的摄像头实战> ...

  4. JavaCV的摄像头实战之十四:口罩检测

    欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 本文是<JavaCV的摄像头实战> ...

  5. JavaCV的摄像头实战之四:抓图

    欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 本文是<JavaCV的摄像头实战> ...

  6. jquery实现截取pc图片_jquery 上传图片自由截取

    为了使用户能自定义个人头像,需要提供一个对上传图片的截图功能,当前很多网站特别是SNS类网站都提供这样的功能,非常实用.本文主要是利用jQuery的imgAreaSelect插件实现. 首先引入三个文 ...

  7. (原创)基于ZedBoard的Webcam设计(二):USB摄像头图片采集+QT显示

    在(原创基于ZedBoard的Webcam设计(一):Zedboard上的USB摄像头(V4L2接口)的图片采集中,我们完成了ZedBoard上USB摄像头的单幅图片采集,采集到的图片是存储在文件系统 ...

  8. Py:利用pyautogui实现自动将pdf文件(需手动设定pdf总页数)自动翻页并截取另存为图片形式,或自动隔0.1秒自动截笔记本全屏保存到指定文件夹

    Py:利用pyautogui实现自动将pdf文件(需手动设定pdf总页数)自动翻页并截取另存为图片形式,或自动隔0.1秒自动截笔记本全屏保存到指定文件夹 目录 实现步骤和结果 核心代码 实现步骤和结果 ...

  9. C#实现网页加载后将页面截取成长图片 | Playwright版

    前言 如何将网页生成预览图? 要实现这个功能,可以用WebBrowser组件模拟浏览器,或者使用系统浏览器访问网页,再进行截图操作. 但是,这样需要编写大量的控制代码. 工欲善其事,必先利其器! 利用 ...

最新文章

  1. INTERVAL数据类型-007学习笔记
  2. uva 1615——Highway
  3. FreeEIM通讯软件无论是画面风格还是游戏内容
  4. Hive 处理 json 的几个函数
  5. 07 行锁功过:怎么减少行锁对性能的影响? (笔记)
  6. 吴恩达二月升级当爸,Jeff Dean打趣:无监督学习要开始了,需要数据集么?
  7. 2种造成sqlserver自增列不连续的原因
  8. 七天LLVM零基础入门(Linux版本)------总结
  9. quartus仿真17:T触发器的时序逻辑电路
  10. 深度学习知识点全面总结
  11. 论文笔记_S2D.38_2018-CVPR_DORN_用于单目深度估计的深度有序回归网络
  12. c语言自动计费工作,c语言编程实现话单计费实例
  13. linux内存泄露检查工具
  14. 【C++程序设计语言A视频教程 全12讲 中科院】【下载链接】
  15. python spark pyspark——朴素贝叶斯习题整理
  16. 序号 html ol自动缩进,ol自定义序号样式的方法
  17. 机房收费系统——退卡
  18. 【LeetCode】灯泡开关Ⅰ~ Ⅳ(你还是把我关了吧)
  19. Kvaser Leaf light HS v2 | 如何使用Excel发送和接收CAN报文数据
  20. html中怎么把h标签左移,基础标签--h、p、a、hr、br、img、base

热门文章

  1. seo优化什么意思?
  2. Matlab如何在文件中写入空格和换行
  3. 5G mMTC场景下NB-IoT / eMTC增强技术
  4. join()方法的作用
  5. C/C++ 与 Python
  6. ReactHooks——使用lodash中的throttle
  7. mysql中limit2,1和limit2 offset 1的区别
  8. Android Object 转 Json
  9. python实现一个简单的图像处理交互界面(tkinter库)
  10. [C++][linux]C++实现类似C#AutoResetEvent或者win C++的SetEvent