OpenCV编程-四路摄像头拼接实时显示

2024-02-14 23:32

本文主要是介绍OpenCV编程-四路摄像头拼接实时显示,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


手头上摄像头蛮多的,顺便就把多路摄像头实时拼接显示做了一下,如下图:

// opencvtest.cpp : 定义控制台应用程序的入口点。
//#include "stdafx.h"
#include <opencv2/opencv.hpp>
#include <iostream>
#include <time.h>
#include<windows.h>
using namespace cv;
using namespace std;Mat frame;
Mat frame1;
Mat b;
Mat b1;
cv::Mat roi_img_left;
cv::Mat roi_img_right;
cv::Mat roi_img_left1;
cv::Mat roi_img_right1;
char fileNameBmpLeft[64];
char fileNameBmpRight[64];
int calibStep = 1;
int ret = 0;
int _tmain(int argc, _TCHAR* argv[])
{namedWindow("【display】", CV_WINDOW_NORMAL);VideoCapture capture(1);Sleep(100);capture.set(CV_CAP_PROP_FRAME_WIDTH, 2560);capture.set(CV_CAP_PROP_FRAME_HEIGHT, 960);capture.set(CV_CAP_PROP_FPS, 30);//帧数Sleep(100);VideoCapture capture1(2);Sleep(100);capture1.set(CV_CAP_PROP_FRAME_WIDTH, 2560);capture1.set(CV_CAP_PROP_FRAME_HEIGHT, 960);capture1.set(CV_CAP_PROP_FPS, 30);//帧数Sleep(100);setMouseCallback("【display】", on_mouse, &frame);while (1){capture1 >> frame1;capture >> frame;b = frame.clone(); //a copy to b roi_img_left = frame(cv::Range(0, 960), cv::Range(0, 1280));roi_img_right = b(cv::Range(0, 960), cv::Range(1280, 2560));b1 = frame1.clone(); //a copy to b roi_img_left1 = frame1(cv::Range(0, 960), cv::Range(0, 1280));roi_img_right1 = b1(cv::Range(0, 960), cv::Range(1280, 2560));Mat combine, combine1, combine2;hconcat(roi_img_left, roi_img_right, combine1);hconcat(roi_img_left1, roi_img_right1, combine2);vconcat(combine1, combine2, combine);imshow("【display】", combine);frame.release();break;waitKey(30);}capture.release();system("pause");return 0;
}


这篇关于OpenCV编程-四路摄像头拼接实时显示的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/709873

相关文章

idea粘贴空格时显示NBSP的问题及解决方案

《idea粘贴空格时显示NBSP的问题及解决方案》在IDEA中粘贴代码时出现大量空格占位符NBSP,可以通过取消勾选AdvancedSettings中的相应选项来解决... 目录1、背景介绍2、解决办法3、处理完成总结1、背景介绍python在idehttp://www.chinasem.cna粘贴代码,出

SpringBoot+Vue3整合SSE实现实时消息推送功能

《SpringBoot+Vue3整合SSE实现实时消息推送功能》在日常开发中,我们经常需要实现实时消息推送的功能,这篇文章将基于SpringBoot和Vue3来简单实现一个入门级的例子,下面小编就和大... 目录前言先大概介绍下SSE后端实现(SpringBoot)前端实现(vue3)1. 数据类型定义2.

Java AOP面向切面编程的概念和实现方式

《JavaAOP面向切面编程的概念和实现方式》AOP是面向切面编程,通过动态代理将横切关注点(如日志、事务)与核心业务逻辑分离,提升代码复用性和可维护性,本文给大家介绍JavaAOP面向切面编程的概... 目录一、AOP 是什么?二、AOP 的核心概念与实现方式核心概念实现方式三、Spring AOP 的关

C#实现SHP文件读取与地图显示的完整教程

《C#实现SHP文件读取与地图显示的完整教程》在地理信息系统(GIS)开发中,SHP文件是一种常见的矢量数据格式,本文将详细介绍如何使用C#读取SHP文件并实现地图显示功能,包括坐标转换、图形渲染、平... 目录概述功能特点核心代码解析1. 文件读取与初始化2. 坐标转换3. 图形绘制4. 地图交互功能缩放

MySQL的JDBC编程详解

《MySQL的JDBC编程详解》:本文主要介绍MySQL的JDBC编程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录前言一、前置知识1. 引入依赖2. 认识 url二、JDBC 操作流程1. JDBC 的写操作2. JDBC 的读操作总结前言本文介绍了mysq

Python与MySQL实现数据库实时同步的详细步骤

《Python与MySQL实现数据库实时同步的详细步骤》在日常开发中,数据同步是一项常见的需求,本篇文章将使用Python和MySQL来实现数据库实时同步,我们将围绕数据变更捕获、数据处理和数据写入这... 目录前言摘要概述:数据同步方案1. 基本思路2. mysql Binlog 简介实现步骤与代码示例1

Python异步编程之await与asyncio基本用法详解

《Python异步编程之await与asyncio基本用法详解》在Python中,await和asyncio是异步编程的核心工具,用于高效处理I/O密集型任务(如网络请求、文件读写、数据库操作等),接... 目录一、核心概念二、使用场景三、基本用法1. 定义协程2. 运行协程3. 并发执行多个任务四、关键

AOP编程的基本概念与idea编辑器的配合体验过程

《AOP编程的基本概念与idea编辑器的配合体验过程》文章简要介绍了AOP基础概念,包括Before/Around通知、PointCut切入点、Advice通知体、JoinPoint连接点等,说明它们... 目录BeforeAroundAdvise — 通知PointCut — 切入点Acpect — 切面

C#异步编程ConfigureAwait的使用小结

《C#异步编程ConfigureAwait的使用小结》本文介绍了异步编程在GUI和服务器端应用的优势,详细的介绍了async和await的关键作用,通过实例解析了在UI线程正确使用await.Conf... 异步编程是并发的一种形式,它有两大好处:对于面向终端用户的GUI程序,提高了响应能力对于服务器端应

C# async await 异步编程实现机制详解

《C#asyncawait异步编程实现机制详解》async/await是C#5.0引入的语法糖,它基于**状态机(StateMachine)**模式实现,将异步方法转换为编译器生成的状态机类,本... 目录一、async/await 异步编程实现机制1.1 核心概念1.2 编译器转换过程1.3 关键组件解析