使用OpenCV批量定位图片,并每隔0.5秒动态显示效果
来源:互联网 发布:手机共享网络给电脑 编辑:程序博客网 时间:2024/06/04 18:38
简介
使用OpenCV批量定位图片,并每隔0.5秒动态显示效果,可以灰度化或者否,再保存到相应文件夹下。
代码
// Demon.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <opencv2\opencv.hpp>#include <windows.h> #include<vector>#include<string> #include<iostream>using namespace std;using namespace cv;int _tmain(int argc, _TCHAR* argv[]){ string dir_path = "F:\\AutoSparePart2\\20170928\\Camera\\Cam2\\0\\"; char outDirName[50]; Directory dir; Rect select;//声明矩形 string extenttype = "*.bmp"; vector<string> fileNames = dir.GetListFiles(dir_path, extenttype, false); for (int item = 0; item < fileNames.size(); item++) { //get image name string fileName = fileNames[item]; string fileFullName = dir_path + fileName; //cout << "File name:" << fileName << endl; cout << "Full path:" << fileFullName << endl; cv::Mat img = cv::imread(fileFullName); /*Mat grayImg; cvtColor(img, grayImg, CV_BGR2GRAY); cv::imshow("gray", grayImg); cv::waitKey();*/ sprintf_s(outDirName, "F:\\objectmarker\\todo\\gray\\%08d.jpg", item); //rectangle矩形 select.x = 20; select.y = 10; select.width = 250; select.height = 200; rectangle(img, select, Scalar(255, 0, 255), 2, 8, 0);//用矩形画矩形窗 cv::imshow("rectangleImg", img); cv::waitKey(500); //imwrite(outDirName, img); } return 0;}
另一种显示方式
// Demon.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <opencv2\opencv.hpp>#include <windows.h> #include<vector>#include<string> #include<iostream>using namespace std;using namespace cv;int _tmain(int argc, _TCHAR* argv[]){ string dir_path = "F:\\AutoSparePart2\\20170928\\Camera\\Cam2\\0\\"; char outDirName[50]; Directory dir; Rect select;//声明矩形 string extenttype = "*.bmp"; vector<string> fileNames = dir.GetListFiles(dir_path, extenttype, false); for (int item = 0; item < fileNames.size(); item++) { //get image name string fileName = fileNames[item]; string fileFullName = dir_path + fileName; //cout << "File name:" << fileName << endl; cout << "Full path:" << fileFullName << endl; cv::Mat img = cv::imread(fileFullName); /*Mat grayImg; cvtColor(img, grayImg, CV_BGR2GRAY); cv::imshow("gray", grayImg); cv::waitKey();*/ sprintf_s(outDirName, "F:\\BaiduYunDownload\\ImagesJpg\\Cam-2\\0\\%06d.jpg", item); //rectangle矩形 select.x = 20; select.y = 10; select.width = 250; select.height = 200; rectangle(img, select, Scalar(255, 0, 255), 2, 8, 0);//用矩形画矩形窗 /*cv::imshow("rectangleImg", img); cv::waitKey(500);*/ Mat faceROI = img(select); cv::imshow("faceROI", faceROI); cv::waitKey(500); //imwrite(outDirName, img); } return 0;}
写入
// Demon.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <opencv2\opencv.hpp>#include <windows.h> #include<vector>#include<string> #include<iostream>using namespace std;using namespace cv;int _tmain(int argc, _TCHAR* argv[]){ string dir_path = "F:\\AutoSparePart2\\20171017\\Camera\\Cam4\\0\\"; char outDirName[50]; Directory dir; Rect select;//声明矩形 string extenttype = "*.bmp"; vector<string> fileNames = dir.GetListFiles(dir_path, extenttype, false); for (int item = 0; item < fileNames.size(); item++) { //get image name string fileName = fileNames[item]; string fileFullName = dir_path + fileName; //cout << "File name:" << fileName << endl; cout << "Full path:" << fileFullName << endl; Mat img = cv::imread(fileFullName); /*Mat grayImg; cvtColor(img, grayImg, CV_BGR2GRAY); cv::imshow("gray", grayImg); cv::waitKey();*/ sprintf_s(outDirName, "F:\\BaiduYunDownload\\ImagesJpg2\\Cam-4\\0\\%06d.jpg", item+1087); //rectangle矩形 select.x = 0; select.y = 0; select.width = 320; select.height = 240; rectangle(img, select, Scalar(255, 0, 255), 2, 8, 0);//用矩形画矩形窗 imshow("rectangleimg", img); waitKey(500); Mat faceROI = img(select); /*cv::imshow("faceROI", faceROI); cv::waitKey(200); */ //imwrite(outDirName, faceROI); } return 0;}
内存不足,改动sprintf_s(outDirName, “F:\BaiduYunDownload\ImagesJpg\Cam-2\0\%06d.jpg”, item);
阅读全文
0 0
- 使用OpenCV批量定位图片,并每隔0.5秒动态显示效果
- opencv每隔几秒在图片上显示一个点 (代码)
- 利用animation-list做每隔几秒显示一张图片的动画效果
- 图片每隔5秒抖动
- 动态显示图片,并为hyperlink 做鼠标悬停效果
- opencv中在屏幕上每隔几秒显示一个点,并且保存点的坐标
- 【OpenCV】加载并显示图片
- opencv载入并显示图片
- opencv中批量读取图片并保存
- opencv中批量读取图片并保存
- 使用Opencv的python接口简单读取并显示图片
- OpenCv中批量读取图片数据并显示出来的C++程序
- 动态显示网页图片效果
- 使用Spark批量上传图片到HBase中并同时使用OpenCV提取SIFT特征值
- matlab 批量读取并显示图片
- jQuery实现鼠标滑过图片时会缩小并动态显示信息的幻灯效果
- 使用TimerTask每隔2秒4秒交替执行程序
- 用OpenCV载入并显示图片
- 学习总结
- 文件下载
- 人脸检测识别文献阅读总结
- eclipse下开发第一个flask web程序
- Elasticsearch显示头解释
- 使用OpenCV批量定位图片,并每隔0.5秒动态显示效果
- C++ GUI Programming with Qt4 Second Edition 之 附录A.4 X11系统Qt的安装
- .net MVC 学习随笔
- 关于svm的自己一直比较困惑的点
- 韩国首尔旅游
- 回忆第一次网页制作
- 开源项目-物品交换平台
- STM32的RCC配置流程
- opencv-Trackbar调色板