简单看了一个yolov4的介绍,mosaic数据增强简单说就是四张图片合一,长宽随机变化。用darknet的话,默认是使用mosaic数据增强的,可以在yolov4.cfg文件中切换mosaic和cutmix:
下面我做一个简单的实现,仅仅把四张图片随机合一,生成mosaic图片集,展示图片效果。
c++程序:
#include <opencv2/opencv.hpp>
#include <ctime>
#include <iostream>
#include <fstream>
#include <sstream>
using namespace std;
using namespace cv;
int main()
{
//读入四幅图片
string imageFile = "D:/work_place/第二批图片/";//图片集文件夹
string imgName = imageFile + "imgName.txt";
ifstream fin(imgName, ios::in);
//char line[1024] = { 0 };
string line;
while (1)
{
vector<Mat> inputImg;
for (int i = 0; i < 4; i++)
{
getline(fin, line);
cout << "Image Name: " << line << endl;
string i