添加 保存emb值 功能

添加 保存emb值 功能
This commit is contained in:
2019-12-25 17:18:34 +08:00
parent 11e7f54983
commit c34476f4d9
2 changed files with 24 additions and 5 deletions

2
.gitignore vendored
View File

@@ -13,3 +13,5 @@ model_128.zip
model_512.zip model_512.zip
emb_csv/*.csv emb_csv/*.csv
emb_img/*.jpg emb_img/*.jpg
kkk.jpg

View File

@@ -28,6 +28,22 @@ void load_emb_csv(int num, vector<vector<mydataFmt>> &vecVec) {
} }
} }
void write_emb_csv(vector<mydataFmt> &o, int num) {
ofstream outFile;
outFile.open("../emb_csv/" + to_string(num + 1) + ".csv", ios::out); // 打开模式可省略
for (int l = 0; l < Num; ++l) {
// cout << o[l] << endl;
if (l == Num - 1) {
outFile << o[l];
} else {
outFile << o[l] << ',';
}
}
outFile << endl;
outFile.close();
cout << "write over!" << endl;
}
float compare(vector<mydataFmt> &lineArray0, vector<mydataFmt> &lineArray1) { float compare(vector<mydataFmt> &lineArray0, vector<mydataFmt> &lineArray1) {
mydataFmt sum = 0; mydataFmt sum = 0;
for (int i = 0; i < Num; ++i) { for (int i = 0; i < Num; ++i) {
@@ -40,7 +56,6 @@ float compare(vector<mydataFmt> &lineArray0, vector<mydataFmt> &lineArray1) {
return result; return result;
} }
void run_mtcnn(Mat &image, vector<Rect> &vecRect) { void run_mtcnn(Mat &image, vector<Rect> &vecRect) {
vector<Point> vecPoint; vector<Point> vecPoint;
mtcnn find(image.rows, image.cols); mtcnn find(image.rows, image.cols);
@@ -62,6 +77,9 @@ void run_facenet(Mat &image, vector<Rect> &vecRect, int csv_num) {
vector<mydataFmt> n; vector<mydataFmt> n;
vector<vector<mydataFmt>> o; vector<vector<mydataFmt>> o;
ggg.run(fourthImage, n, i); ggg.run(fourthImage, n, i);
// write_emb_csv(n, i);
// return;
load_emb_csv(csv_num, o); load_emb_csv(csv_num, o);
for (int j = 0; j < o.size(); ++j) { for (int j = 0; j < o.size(); ++j) {
float result = compare(n, o[j]); float result = compare(n, o[j]);
@@ -74,14 +92,13 @@ void run_facenet(Mat &image, vector<Rect> &vecRect, int csv_num) {
} }
} }
void run() { void run() {
int b = 0; int b = 0;
if (b == 0) { if (b == 0) {
// Mat image = imread("../40.jpg"); // Mat image = imread("../40.jpg");
// Mat image = imread("../1.jpeg"); // Mat image = imread("../3.jpeg");
// Mat image = imread("../Kong_Weiye.jpg"); // Mat image = imread("../Kong_Weiye.jpg");
Mat image = imread("../Kong_Weiye1.jpg"); Mat image = imread("../kkk.jpg");
// Mat image = imread("../20.png"); // Mat image = imread("../20.png");
// Mat image = imread("../emb_img/0.jpg"); // Mat image = imread("../emb_img/0.jpg");
@@ -89,7 +106,7 @@ void run() {
start = clock(); start = clock();
vector<Rect> vecRect; vector<Rect> vecRect;
run_mtcnn(image, vecRect); run_mtcnn(image, vecRect);
run_facenet(image, vecRect, 5); run_facenet(image, vecRect, 13);
imshow("result", image); imshow("result", image);
imwrite("../result.jpg", image); imwrite("../result.jpg", image);