|
@@ -40,6 +40,15 @@ AVFrame *cvmatToAvframe(cv::Mat *image, AVFrame *frame) {
|
|
|
const char *fingerprintFromFFAVFrame(FILE *file, AVFrame *frame, int *len) {
|
|
|
if (file) fprintf(file, "fingerprintFromFFAVFrame\n");
|
|
|
if (!frame)return NULL;
|
|
|
+
|
|
|
+ if (1) {
|
|
|
+ char *buf = (char *) malloc(sizeof(char) * 8 * 8);
|
|
|
+ for (int i = 0; i < 64; ++i) {
|
|
|
+ buf[i] = 0;
|
|
|
+ }
|
|
|
+ return buf;
|
|
|
+ }
|
|
|
+
|
|
|
auto img = avframeToCvmat(frame);
|
|
|
if (img.empty()) {
|
|
|
printf("image is empty.");
|
|
@@ -57,19 +66,17 @@ const char *fingerprintFromFFAVFrame(FILE *file, AVFrame *frame, int *len) {
|
|
|
cvtColor(res, gray, COLOR_BGR2GRAY);
|
|
|
if (file) fprintf(file, "fingerprintFromFFAVFrame 5\n");
|
|
|
//获取灰度平均值
|
|
|
-// double mn = mean(gray)[0];
|
|
|
+ double mn = mean(gray)[0];
|
|
|
if (file) fprintf(file, "fingerprintFromFFAVFrame 6\n");
|
|
|
char *buf = (char *) malloc(sizeof(char) * scale_width * scale_height);
|
|
|
if (file) fprintf(file, "fingerprintFromFFAVFrame 7\n");
|
|
|
// //得到图像指纹值
|
|
|
-// for (int i = 0; i < 8; i++) {
|
|
|
-// for (int j = 0; j < 8; j++) {
|
|
|
-// buf[i * 8 + j] = (gray.at<unsigned char>(i, j) > mn) ? 1 : 0;
|
|
|
-// }
|
|
|
-// }
|
|
|
- for (int i = 0; i < 64; ++i) {
|
|
|
- buf[i] = 0;
|
|
|
+ for (int i = 0; i < 8; i++) {
|
|
|
+ for (int j = 0; j < 8; j++) {
|
|
|
+ buf[i * 8 + j] = (gray.at<unsigned char>(i, j) > mn) ? 1 : 0;
|
|
|
+ }
|
|
|
}
|
|
|
+
|
|
|
if (file) fprintf(file, "fingerprintFromFFAVFrame 8\n");
|
|
|
*len = scale_width * scale_height;
|
|
|
if (file) fprintf(file, "fingerprintFromFFAVFrame 9\n");
|