admin管理员组

文章数量:1544594

SSD在数据增广部分做了很多工作,处理方法集中在load_batch函数中,首先是对每一帧图像,即每个datum做DistortImage处理,DistortImage包括亮度、饱和度,色调,颜色灰度扭曲等变换,再进行ExpandImage处理

在DistortImage函数中,首先用OpenCV的 cv_img = DecodeDatumToCVMat(datum, param_.force_color())函数将图像从Datum数据中解码出来,数据的变形是针对图片来做的,在ApplyDistort(const cv::Mat& in_img, const DistortionParameter& param)函数中,输入一个Mat格式的图片,输出一个经过DistortionParameter参数所变换后的图像,其中包括随机亮度失真变换,随机对比度失真变换,做随机饱和度失真变换,随机色调失真变换和随机图像通道变换,这里是一种排列组合的方法,变换的顺序不同,得到的图片结果也不同,根据随机数是否大于0.5来确定对比度和色调失真变换的顺序。代码如下:

返回变换后的图片,再将其编码成Datum的格式,编码函数EncodeCVM

本文标签: 图像数据ssd