视频前景提取 (I)【滑动条版本】

简介:

对两个不同的图片(取自于视频)进行差分,然后二值化,只不过添加进了一个滑动条,可以更直观的看到变化。


//显示图像文件
#include <opencv2/opencv.hpp>
#include <stdio.h>

using namespace std;

//#pragma comment(linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"")

IplImage *img3=NULL;  //差分图
IplImage *img4=NULL;  //二值图

void on_trackbar(int pos)
{
	// 转为二值图
	cvThreshold(img3, img4, pos, 255, CV_THRESH_BINARY);
	// 显示二值图
	cvShowImage("二值图", img4);
}

int main()
{
	//从文件中读取图像
	IplImage *img1 = cvLoadImage("007.jpg", CV_LOAD_IMAGE_UNCHANGED);
	IplImage *img2 = cvLoadImage("009.jpg", CV_LOAD_IMAGE_UNCHANGED);

	img3=cvCreateImage(cvGetSize(img1),img1->depth,img1->nChannels);
	cvAbsDiff(img1,img2,img3);

	// 对得到的前景进行阈值选取,去掉伪前景
	img4=cvCreateImage(cvGetSize(img1),img1->depth,img1->nChannels);

	//在指定窗口中显示图像
	cvShowImage("原图1", img1);
	cvShowImage("原图2", img2);
	cvShowImage("差分", img3);
	

	// 创建二值图窗口
	cvNamedWindow("二值图", CV_WINDOW_AUTOSIZE);
	// 滑动条
	int nThreshold = 0;
	cvCreateTrackbar("二值图滑动条", "二值图", &nThreshold, 254, on_trackbar);

	on_trackbar(1);

	//等待按键事件
	cvWaitKey(0);

	cvDestroyAllWindows();
	cvReleaseImage(&img1);
	cvReleaseImage(&img2);
	cvReleaseImage(&img3);
	cvReleaseImage(&img4);

	return 0;
}




相关文章
|
编解码
使用遮罩提取图像中感兴趣的区域
使用遮罩隔离感兴趣区域 (ROI) 来有效地处理被阻止的图像。 某些大图像源仅在图像的一小部分中具有有意义的数据。可以通过将处理限制为包含有意义数据的 ROI 来缩短总处理时间。使用掩码定义投资回报率。蒙版是一种逻辑图像,其中像素表示投资回报率。
150 1
|
算法 前端开发 JavaScript
【视觉基础篇】10 # 图形系统如何表示颜色?
【视觉基础篇】10 # 图形系统如何表示颜色?
190 0
【视觉基础篇】10 # 图形系统如何表示颜色?
|
机器人 计算机视觉 Python
基于颜色特性的目标识别方法
1.目标识别与定位 对基于视觉的机械臂控制来说,机器人视觉是一个非常重要的部分。机器人只有在视觉的指引下,才能获取目标的正确信息,从而控制机械臂完成指定任务。
1917 0
|
编解码 数据库
LabVIEW色彩匹配实现颜色识别、颜色检验(基础篇—13)
LabVIEW色彩匹配实现颜色识别、颜色检验(基础篇—13)
LabVIEW色彩匹配实现颜色识别、颜色检验(基础篇—13)
|
30天前
|
人工智能 计算机视觉
MangaNinja:开源线稿着色工具,自动匹配图像风格,一键快速上色
MangaNinja 是一款基于参考图像的线稿着色工具,通过创新的补丁重排模块和点驱动控制方案,实现精准颜色匹配和复杂场景处理,适用于漫画、插画和数字艺术创作。
92 10
MangaNinja:开源线稿着色工具,自动匹配图像风格,一键快速上色
|
计算机视觉 Windows
OpenCV实现图像物体轮廓,前景背景,标记,并保存。
#include // for standard I/O #include // for strings #include // for controlling float print precision #include // string to number conve...
1114 0
|
机器学习/深度学习 缓存 人机交互
OpenCV-实现背景分离(可用于更改证件照底色)
OpenCV-实现背景分离(可用于更改证件照底色)
437 1
|
前端开发 Android开发
【Android 应用开发】Canvas 精准绘制文字 ( 测量文本真实边界 | 将文本中心点与给定中心点对齐 )
【Android 应用开发】Canvas 精准绘制文字 ( 测量文本真实边界 | 将文本中心点与给定中心点对齐 )
235 0
【Android 应用开发】Canvas 精准绘制文字 ( 测量文本真实边界 | 将文本中心点与给定中心点对齐 )
|
图形学 Python
GDI+简单现实文字旋转
原文 http://www.cnblogs.com/kaixiangbb/p/3301272.html 题记     入职新公司已快有两月了,试用期已快结束,项目却迟迟还未正式启动。安排给我的多是些琐事,一直未进入工作状态。
1011 0

热门文章

最新文章