之前看到码农大佬分享的文章,感觉是个小乐子,就自己动手做了个小软件,方便还没学会PS的小伙伴们临时换背景Hhhh~
资源索引:
这里是具体的步骤实现[VS2017]图像处理——给证件照换背景
这里是证件照换背景程序
这里是证件照换背景程序源码
软件操作如GIF图所示:
新建Qt的项目文件~
.h中:
#include <QWidget>
#include <QDebug>
#include <QFile>
#include <QFileDialog>
#include <iostream>
using namespace std;
#include <opencv.hpp>
using namespace cv;
public:
Widget(QWidget *parent = nullptr);
~Widget();
Mat img,img_show,input_output;
bool oldBG_Blue,oldBG_Red;
bool newBG_Blue,newBG_Red,newBG_White;
QImage QImg;
Mat InputImg;
QString file_path;
string file;
void DealPicture(Mat image);
QImage cvMat2QImage(const cv::Mat& mat);
cv::Mat QImage2cvMat(QImage image);
private slots:
void on_radioButton_oldBG_Red_clicked();
void on_radioButton_oldBG_Blue_clicked();
void on_radioButton_newBG_White_clicked();
void on_radioButton_newBG_Blue_clicked();
void on_radioButton_newBG_Red_clicked();
void on_pushButton_DealPicture_clicked();
void on_pushButton_SelectPicture_clicked();
.cpp中:
#include "widget.h"
#include "ui_widget.h"
Widget::Widget(QWidget *parent)
: QWidget(parent)
, ui(new Ui::Widget)
{
ui->setupUi(this);
oldBG_Blue = true;
oldBG_Red = false;
newBG_Blue = false;
newBG_Red = false;
newBG_White = true;
ui->radioButton_oldBG_Blue->click()