OpenCV13(摄像机显示和图像捕获 + 控制台下获取时间)

2023-11-09

1.摄像机测试程序,图像捕获

// VS2012 + OpenCV2.4.9
// 基于OpenCV的单个摄像机显示程序
// 控制台,按"c"键捕获图像,按照时间格式命名,默认C盘
// Alex 2016.9.14
//

#include "stdafx.h"
#include "highgui.h"
#include <iostream>
#include "time.h"


using std::cout;
using std::cin;
using std::endl;


int _tmain(int argc, _TCHAR* argv[])
{
	cvNamedWindow("avi");
	CvCapture* capture = cvCaptureFromCAM(0);
	IplImage* frame;
	cout<<"摄像机显示程序by Alex,based on OpenCV"<<endl;
	cout<<"按键操作请务必保持图像窗体被鼠标选择、居前,否则无响应"<<endl;
	cout<<"按c键获取图像,存在C盘,文件名为:opencv时间.jpg"<<endl;
	cout<<"按esc退出"<<endl;

	while(1)
	{
		frame = cvQueryFrame(capture);
		if(!frame) break;

		cvShowImage("avi",frame);
		char c = cvWaitKey(1);
		if (c == 27)
			break;
		if(c == 'c')
		{
			char path[20] = {NULL};
			time_t now = time(0);//这是“0”零
		//	path的格式化要使用strftime,使用sprintf出错!!
			strftime( path, sizeof(path), "C://opencv%M%S.jpg",localtime(&now) ); 
		//	sprintf(path,"C://opencv%M%s.jpg",localtime(&now));出错
			cout<<path<<endl;
			int kk = cvSaveImage(path,frame);
			if (kk != 0)
				cout<<"成功捕获图像!"<<endl;
		}

	}
	cvReleaseCapture(&capture);
	cvDestroyWindow("avi");

	return 0;
}

2.控制台下时间读取

来自:http://wenda.tianya.cn/question/1670b6fa074858b3

//方案— 优点:仅使用C标准库;缺点:只能精确到秒级
#include <time.h> 
#include <stdio.h> 
int main( void ) 
{ 
   time_t t = time(0); 
   char tmp[64]; 
   strftime( tmp, sizeof(tmp), "%Y/%m/%d %X %A 本年第%j天 %z",localtime(&t) ); 
   puts( tmp ); 
   return 0; 
}
size_t strftime(char *strDest, size_t maxsize, const char *format, const struct tm *timeptr);
根据格式字符串生成字符串。
struct tm *localtime(const time_t *timer);
取得当地时间,localtime获取的结果由结构tm返回
返回的字符串可以依下列的格式而定:
%a 星期几的缩写。Eg:Tue 
%A 星期几的全名。 Eg: Tuesday
%b 月份名称的缩写。 
%B 月份名称的全名。 
%c 本地端日期时间较佳表示字符串。 
%d 用数字表示本月的第几天 (范围为 00 至 31)。日期
%H 用 24 小时制数字表示小时数 (范围为 00 至 23)。 
%I 用 12 小时制数字表示小时数 (范围为 01 至 12)。 
%j 以数字表示当年度的第几天 (范围为 001 至 366)。 
%m 月份的数字 (范围由 1 至 12)。
%M 分钟。 
%p 以 ''AM'' 或 ''PM'' 表示本地端时间。 
%S 秒数。 
%U 数字表示为本年度的第几周,第一个星期由第一个周日开始。
%W 数字表示为本年度的第几周,第一个星期由第一个周一开始。 
%w 用数字表示本周的第几天 ( 0 为周日)。 
%x 不含时间的日期表示法。 
%X 不含日期的时间表示法。 Eg: 15:26:30
%y 二位数字表示年份 (范围由 00 至 99)。 
%Y 完整的年份数字表示,即四位数。 Eg:2008
%Z(%z) 时区或名称缩写。Eg:中国标准时间 
%% % 字符。

//方案二 优点:能精确到毫秒级;缺点:使用了windows API 
#include <windows.h> 
#include <stdio.h> 
int main( void ) 
{ 
SYSTEMTIME sys; 
GetLocalTime( &sys ); 
printf( "%4d/%02d/%02d %02d:%02d:%02d.%03d 星期%1d\n",sys.wYear,sys.wMonth,sys.wDay,sys.wHour,sys.wMinute, sys.wSecond,sys.wMilliseconds,sys.wDayOfWeek); 
 return 0;
}

//方案三,优点:利用系统函数,还能修改系统时间
//此文件必须是c++文件
#include<stdlib.h>
#include<iostream>
using namespace std;
void main()
{
   system("time");
}

//方案四,将当前时间折算为秒级,再通过相应的时间换算即可
//此文件必须是c++文件
#include<iostream>
#include<ctime>
using namespace std;
int main()
{
time_t now_time;
now_time = time(NULL);
cout<<now_time;
return 0;
}



本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

OpenCV13(摄像机显示和图像捕获 + 控制台下获取时间) 的相关文章

  • 在python中使用tesseract 3.02的C API与ctypes和cv2

    我正在尝试在 python 中将 Tesseract 3 02 与 ctypes 和 cv2 一起使用 Tesseract 提供了一组公开的 DLL C 风格 API 其中之一如下 TESS API void TESS CALL TessB
  • 在白色背景上将透明 PNG 保存为 JPEG

    假设我有一张 BGRA 图像numpy数组看起来非常像这样 233 228 230 128 233 228 230 128 233 228 230 0 164 160 159 65 199 197 196 65 255 255 254 12
  • 使用 OpenCL 支持构建 OpenCV

    在 CMake 中 我使用 OpenCL Enable ON 构建了 OpenCV 它自动检测到OPENCL INCLUDE DIR路径但是OPENCL LIBRARY即使单击配置后也是空的 为了OPENCL LIBRARY我也没有看到浏览
  • Python opencv排序轮廓[重复]

    这个问题在这里已经有答案了 我正在关注这个问题 如何从左到右 从上到下对轮廓进行排序 https stackoverflow com questions 38654302 how can i sort contours from left
  • 增加图像亮度而不溢出

    我在尝试增加图像亮度时遇到问题 这是原始图像 我想要得到的图像是这样的 现在使用以下代码增加亮度 image cv2 imread home wni vbshare tmp a4 index2 png 0 if sum image 0 le
  • ld:找不到 -llibtbb.dylib 的库

    我尝试从 opencv 2 4 8 apps haarfinder 编译一些文件 但出现以下错误 ld library not found for llibtbb dylib 注意双l在文件名中 我尝试按照这里的教程进行操作 http co
  • 如何在win32上安装OpenCV 2.0

    我需要在 Win32 上安装 OpenCV 我目前没有安装它 我下载了 OpenCV 2 0 0a win32 exe 并运行它 我现在到底该怎么办 没有 lib之类的东西 我找到了一些使用 cmake 构建版本的说明 http openc
  • 将嘈杂的硬币重塑为圆形

    我正在使用 JavaCV OpenCV 包装器 进行硬币检测 但是当硬币连接时我遇到了一些问题 如果我尝试侵蚀它们以分离这些硬币 它们就会失去圆形形状 如果我尝试计算每个硬币内部的像素 可能会出现问题 因此某些硬币可能会被误算为更大的硬币
  • 屏幕截图中低分辨率文本的 OCR

    我正在编写一个 OCR 应用程序来从屏幕截图图像中读取字符 目前 我只关注数字 我的方法部分基于这篇博文 http blog damiles com 2008 11 basic ocr in opencv http blog damiles
  • 编译使用Basler相机的程序

    我正在尝试使用 Basler 相机捕获图像的 C 程序来工作 我拿到 来自制造商的代码 它应该 非常容易使用 但是 链接它有 成为一场噩梦 我的 C 时代已经过去了 最近只使用 Matlab 所以我可能会犯一些愚蠢的错误 但请赐教 代码如下
  • opencv如何使用compareHist函数

    img cv2 imread mandrill png histg cv2 calcHist img 0 None 256 0 256 if len sys argv lt 2 print gt gt sys stderr Usage sy
  • C++ OpenCV 2.3 中缺少 MoveWindow()

    我正在使用 OpenCV 2 3 的 C 版本 并且正在努力完成一项基本任务 我想做的是创建一个窗口并将其移动到屏幕上的特定位置 例如使用 cv namedWindow My Window 1 cv MoveWindow My Window
  • OpenCV findContours 破坏源图像

    我编写了一个在单通道空白图像中绘制圆形 直线和矩形的代码 之后 我只需找出图像中的轮廓 就可以正确获取所有轮廓 但找到轮廓后 我的源图像变得扭曲 为什么会出现这种情况 任何人都可以帮我解决这个问题 我的代码如下所示 using namesp
  • CvMat 和 Imread 与 IpImage 和 CvLoadImage

    使用 OpenCv 2 4 我有两个选项来加载图像 1 CvMat and Imread 2 IpImage and CvLoadImage 使用哪一个更好 我尝试将两者混合并最终出现段错误 imread返回一个Mat not CvMat
  • 如何使用 OpenCV 检测图像帧中的对象?

    我正在使用 Raspberry Pi 开发一个漫游器 它将清扫房间并捡起掉落在地上的物体 为了检测物体 我使用了在流动站操作开始时拍摄的参考图像 以及每 10 秒单击一次的图像 新图像 为了确定图像帧是否发生变化 我在参考图像和新图像之间进
  • opencv createsamples没有错误,但是没有找到样本

    我在用着this http coding robin de 2013 07 22 train your own opencv haar classifier html教程 我正在根据我的正面图像创建大量样本 我正在使用 Windows 这是
  • 如何在Python中使用tcp套接字发送和接收网络摄像头流?

    我正在尝试重新创建这个项目 https github com hamuchiwa AutoRCCar 我拥有的是服务器 我的电脑 和客户端 我的树莓派 我所做的与原始项目不同的是我尝试使用一个简单的网络摄像头而不是树莓派摄像头将图像从我的
  • 使用opencv计算深度视差图

    我无法使用 opencv 从视差图计算深度 我知道两个立体图像中的距离是用以下公式计算的z baseline focal disparity p 但我不知道如何使用地图计算视差 我使用的代码如下 为我提供了两个图像的视差图 import n
  • 在加载“cv2”二进制扩展期间检测到递归

    我有一个小程序 在 pyinstaller 编译后返回 opencv 错误 但无需编译即可工作 我在 Windows 10 上使用 Python 3 8 10 Program 导入 pyautogui将 numpy 导入为 np导入CV2
  • 如何使用 Python 将我的 GoPro Hero 4 相机直播连接到 openCV?

    我在尝试从我的新 GoPro Hero 4 相机捕获实时流并使用 openCV 对其进行一些图像处理时遇到麻烦 这是我的试用 创建的窗口上没有显示任何内容 import cv2 import argparse import time imp

随机推荐

  • (三)目标检测之 R-CNN系列

    目标检测之 R CNN系列 前言 R CNN系列 一 R CNN https arxiv org abs 1311 2524 二 Fast R CNN https arxiv org abs 1504 08083 三 Faster R CN
  • 调用关卡蓝图上的接口函数

    本片博客实现的是不同蓝图之间用接口实现通信 下面用附上新建蓝图接口的大体步骤和实现的蓝图逻辑 新建蓝图接口 在蓝图接口里面新建函数 在关卡蓝图里面实现函数 如下图所示 然后在控件蓝图里面调用该接口 具体实现如下图
  • 加快android编译速度

    一 修改运行内存 进入项目 菜单栏 help Edit Custom VM Option Paste Image png 添加或修改为 Xms2048m Xmx2048m XX MaxPermSize 2048m XX ReservedCo
  • 数据可视化实例阅读分析

    一 任务要求 从教材或网络上找一个可视化实例 简要分析该实例 要求 1 根据可视化图反推出该图所依据的数据表并绘出 指出表中各列数据的属性 即类型 N O Q型 5分 2 找出可视化图形中的所有视觉变量 3分 3 分析从数据属性到视觉变量的
  • 使用haproxy 配置rabbitmq消息队列主从

    1 创建haproxy的配置文件 sudo vi etc haproxy ha rabbit conf 2 配置前向业务访问frontend 前置代理 bind 0 0 0 0 5672 绑定0 0 0 0的5672端口 mode tcp
  • 博物馆(展览馆)RFID信息化建设管理方案

    项目概述 基于博物馆 展览馆 RFID信息化建设管理方案 博物馆是征集 典藏 陈列和研究代表自然和人类文化遗产的实物的场所 并对那些有科学性 历史性或艺术价值的物品进行分类 为公众提供知识 教育和欣赏的文化教育机构 建筑物 地点或社会公共机
  • openresty ngx_lua定时任务

    openresty ngx lua定时任务 ngx timer every https github com openresty lua nginx module ngxtimerevery ngx timer at https githu
  • No implementation found for void java接口不能跳转到实现类

    No implementation found for void 前两天idea还是好的 现在就是不能跳转到impl实现类 总是提示no implementation found for void 后来通过百度发现 其实是idea的缓存在作
  • 【知识学习】马氏距离 Mahalanobis Distance

    目录 1 协方差的意义 2 马氏距离 2 1 概述 2 2 公式 2 3 实际意义 2 4 局限性 2 4 1 协方差矩阵必须满秩 不平衡数据少数类一般都不是 2 4 2 不能处理非线性流形 manifold 的问题 线性流形和非线性流形
  • JSON.parseArray报错

    JSON parseArray报错 com alibaba fastjson JSONException syntax error expect actual error pos 1 fastjson version 1 2 47 解决方案
  • 在JavaScript中确认字符串结尾的两种方法

    In this article I ll explain how to solve freeCodeCamp s Confirm the Ending challenge This involves checking whether a s
  • 有趣的xss靶场

    最近发现一个在线xss靶场 挺有趣的 靶场只有12关卡 上面还写了服务区原代码 对于想入门xss的小伙伴可以试着玩一玩 结果只要实现弹窗结果为1即可 链接在这里 https xss haozi me 0x00 server code fun
  • C++基础知识 - 异常处理机制

    异常处理的基本思想 C 的异常处理机制使得异常的引发和异常的处理不必在同一个函数中 这样底层的函数可以着重解决具体问题 而不必过多的考虑异常的处理 上层调用者可以再适当的位置设计对不同类型异常的处理 异常是专门针对抽象编程中的一系列错误进行
  • 代码审查最佳实践

    代码审查是一种出色的软件工具 您绝对应该使用它来提高代码质量 但是像其他任何工具一样 有时可能会误用它 这就是为什么我提出了一些最佳做法来指导您查看同行代码的原因 代码审查不是测试 代码审查是开发人员对开发人员的业务 它不涉及任何测试 代码
  • 目标检测算法分类

    目标检测算法分类 1 两步走的目标检测 先找出候选的一些区域 再对区域进行调整分类 代表 R CNN SPP net Fast R CNN Faster R CNN 2 端到端的目标检测 采用一个网络一步到位 输入图片 输出有哪些物体 物体
  • Mysql之流程控制语句case

    CASE函数 情况1 实现等值判断 类似于switch语句 语法 CASE 要判断的字段或表达式 WHEN 常量1 THEN 要显示的值1或语句1 WHEN 常量2 THEN 要显示的值2或语句2 ELSE 要显示的值n或语句n END 案
  • 将项目部署到服务器

    首先确定各个需要被部署的应用所对应的ip 数据库类型 数据库名 中间件 应用名 版本及端口号 重要提示 主要分为六大步骤 1 部署数据库 kingbase8 导出导入数据库dmp文件 2 安装redis 系统后端需要用到redis 3 部署
  • cocos creator主程入门教程(十)—— A*寻路

    这一篇介绍A 寻路算法 在RPG SLG 模拟经营类游戏 有需要给角色寻路的需求 一般寻路我们采用A 寻路算法 A 寻路算法是一种广度优先启发性算法 先说说什么叫广度优先 搜索分为广度优先和深度优先 主要体现在对节点的展开上 深度优先一直往
  • 关于 html 或 jsp 页面调用js文件里的函数报错onclick is not defined处理方法

    错误 zygh is not defined at HTMLAnchorElement onclick 原因 function 方法写在 function 中 function 相当于匿名方法 里面是私有变量 所以页面找不到这个 funct
  • OpenCV13(摄像机显示和图像捕获 + 控制台下获取时间)

    1 摄像机测试程序 图像捕获 VS2012 OpenCV2 4 9 基于OpenCV的单个摄像机显示程序 控制台 按 c 键捕获图像 按照时间格式命名 默认C盘 Alex 2016 9 14 include stdafx h include