首页 新闻 会员 周边

请教处理视频 亮度 对比度 饱和 锐化等算法处理

0
悬赏园豆:30 [待解决问题]

处理视频 亮度 对比度 饱和 锐化等算法处理 ,非摄像头 帧率30 类似QQ影音色彩处理

iouyoung的主页 iouyoung | 初学一级 | 园豆:167
提问于:2022-07-27 15:10
< >
分享
所有回答(1)
0

opencv了解下,或者ffmpeg

echo_lovely | 园豆:1433 (小虾三级) | 2022-07-27 16:42

opencv能否具体点?

支持(0) 反对(0) iouyoung | 园豆:167 (初学一级) | 2022-07-27 16:54

@iouyoung: 视频有声音吗?

支持(0) 反对(0) echo_lovely | 园豆:1433 (小虾三级) | 2022-07-27 16:55

@iouyoung: 有声音的我没有做过

支持(0) 反对(0) echo_lovely | 园豆:1433 (小虾三级) | 2022-07-27 16:56

@iouyoung: 并且网上有相关代码,搜一下就有了。

支持(0) 反对(0) echo_lovely | 园豆:1433 (小虾三级) | 2022-07-27 16:59

@echo_lovely: 摄像头的比较多,文件视频的没看到什么文章

支持(0) 反对(0) iouyoung | 园豆:167 (初学一级) | 2022-08-04 11:50

@iouyoung: opencv读视频文件和摄像头读流方法是一样的,都是对mat进行操作
我在我们项目里大概找了有注释的这段代码,其他代码没有注释,我不知道干啥的。


//设置图像亮度[0-100]与对比度[1.0-3.0]
void  imgBrightnessContrast::setBrightnessContrast(Mat &mat, int brightness, float contrast)
{
	int nr = mat.rows;
	int nc = mat.cols;
	//if (src.isContinuous())
	//{
	nr = 1;
	nc = nc*mat.rows*mat.channels();
	//}

	int index = 0;
	for (int i = 0; i < nr; i++)
	{
		uchar* inData = mat.ptr<uchar>(i);
		for (int j = 0; j < nc; j++)
		{
			inData[index] = saturate_cast<uchar>(contrast*(inData[index]) + brightness);
			index++;
		}
	}
}




支持(0) 反对(0) echo_lovely | 园豆:1433 (小虾三级) | 2022-08-05 09:12

@echo_lovely: 这段代码我也有(性能还可以),饱和度的也有(就是效率太低)每秒30帧处理不过来

支持(0) 反对(0) iouyoung | 园豆:167 (初学一级) | 2022-08-09 09:46

@iouyoung: 毕竟是软解码

支持(0) 反对(0) echo_lovely | 园豆:1433 (小虾三级) | 2022-08-09 09:48

@echo_lovely: 兄台,这方面可有研究?

支持(0) 反对(0) iouyoung | 园豆:167 (初学一级) | 2022-08-09 10:03
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册