• 实时获取海康摄像头rtsp流


    网络摄像头型号

      海康威视DS-2CD3345-1  2.8mm

        参数: 400万    红外30米    PoE供电    焦距2.8mm

    协议及设置地址

      协议: rtsp

      设置地址: rtsp://admin:jdrx1234567@192.168.60.30:554/h264/ch1/sub/av_stream

    代码版本

      openCV : 3.4.10

      依赖的javacv :

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

    测试代码

    @Test
        public void testRtsp() {
            //必须要加入这两个东西
            System.load("D:\Programs\opencv\build\x64\vc15\bin\opencv_world3410.dll");
            System.load("D:\Programs\opencv\build\bin\opencv_ffmpeg3410_64.dll");
            VideoCapture vc = new VideoCapture();
            boolean isOpen = vc.open("rtsp://admin:jdrx1234567@192.168.60.30:554/h264/ch1/sub/av_stream");
    
            System.out.println("isOpen="+isOpen);
    
            Mat mat = new Mat();
            String winName = "showFrame";
            int height = 600,width = 800;
            HighGui.namedWindow(winName);
            HighGui.resizeWindow(winName, width, height);
            while(vc.read(mat)){
                System.out.println("read.......");
                // 重置大小
                Mat dst = new Mat();
                Imgproc.resize(mat, dst, new Size(width,height));
                // 显示
                HighGui.imshow(winName, dst);
                // waitkey 必须要,否则无法显示
                int key = HighGui.waitKey(1);
                System.out.println("key="+key);
                //esc键退出
                if(key == 27){
                    break;
                }
                //拿到了每帧之后要干嘛就是后面逻辑的事情了
            }
            HighGui.destroyAllWindows();
            vc.release();
        }

    此代码摘抄自网络。

    测试效果

     录屏


  • 相关阅读:
    【转载】Myeclipse如何自动创建hibernate
    win7 64位mysql安装及navicat 解压版
    NuGet套件还原步骤(以vs2012为例)
    Html.DropDownListFor() 二级联动 ($.getJSON)
    ModelState验证部分属性
    asp.net mvc发送邮件
    SpringBoot的热部署
    SpringBoot 入门demo
    集群、负载均衡、微服务、分布式的概念
    SpringBoot 简介
  • 原文地址:https://www.cnblogs.com/lioa/p/13534877.html
Copyright © 2020-2023  润新知