Przeglądaj źródła

优化纯图片检测

DevYK 3 lat temu
rodzic
commit
44d990085a
2 zmienionych plików z 14 dodań i 2 usunięć
  1. 9 0
      build.sh
  2. 5 2
      opencv/image_blur_detection.cpp

+ 9 - 0
build.sh

@@ -0,0 +1,9 @@
+#!/bin/bash
+
+mkdir build && cd build
+
+cmake -DCMAKE_BUILD_TYPE=Release ..
+
+make -j8 && make install
+
+echo "安装成功,在当前 output/lib 下"

+ 5 - 2
opencv/image_blur_detection.cpp

@@ -36,7 +36,10 @@ int doDetection(cv::Mat cvImage) {
             cv::Scalar mu, sigma;
             cv::Scalar mu, sigma;
             cv::meanStdDev(laplacianImage, mu, sigma);
             cv::meanStdDev(laplacianImage, mu, sigma);
             int blur_value = sigma.val[0] * sigma.val[0];
             int blur_value = sigma.val[0] * sigma.val[0];
-            blur_value = blur_value < DEFAULT_BLUR_THRESHOLD ? image_color_ratio(grayCVImage)==0?blur_value : image_color_ratio(grayCVImage):blur_value;
+            if (blur_value < DEFAULT_BLUR_THRESHOLD) {
+                int color = image_color_ratio(grayCVImage);
+                blur_value = color == 0 ? blur_value : color;
+            }
             cvImage.release();
             cvImage.release();
             grayCVImage.release();
             grayCVImage.release();
             return blur_value;
             return blur_value;
@@ -76,7 +79,7 @@ int image_color_ratio(cv::Mat image) {
                 break;
                 break;
             }
             }
         }
         }
-        float i = (float )maxCount / (float )(image.rows * image.cols);
+        float i = (float) maxCount / (float) (image.rows * image.cols);
         if (i >= DEFAULT_PIX_THRESHOLD) {
         if (i >= DEFAULT_PIX_THRESHOLD) {
             num = DEFAULT_BLUR_THRESHOLD + 1;
             num = DEFAULT_BLUR_THRESHOLD + 1;
         };
         };