根の長さを測定する

画像を表示する

最終的な目的は根の長さの測定ですが、まずは画像を表示することから始めましょう。これは画像へのパスは各々で画像の置いてある場所に合わせてください。

#include "opencv/cv.h"
#include "opencv/highgui.h"
using namespace cv;
int main(){
    Mat img = imread("root.jpg", IMREAD_UNCHANGED);
    imshow("IMAGE",img);
    waitKey(10000);
    return 0;
}

輪郭線検出に向けた下準備として2値化する

適当な閾値を設定して2値化し、さらに白黒を反転します。必要であればこのあと、膨張処理を施します。この処理によって細い根が途切れて繋がらずに検出されることを防ぎます。下の画像は2値化し、白黒反転させたものを表示したウィンドウのスクリーンショットです。

02-3
#include "opencv/cv.h"
#include "opencv/highgui.h"
using namespace cv;
int main(){
    Mat img = imread("root.jpg", IMREAD_UNCHANGED);
    Mat gray_img;
    cvtColor(img, gray_img, CV_BGR2GRAY);
    Mat bin_img;
    threshold(gray_img, bin_img, 0, 255, THRESH_BINARY|THRESH_OTSU);
    bin_img = ~bin_img;
    imshow("IMAGE",bin_img); //変更
    waitKey(10000);
    return 0;
}

画像処理でお困りのことはありませんか?


様々なご相談に応じることができます。様々なデータに関して解析の実績がありますので、処理方法について少しだけ相談に乗って欲しいという方も、実装までお願いしたいという方も、お気軽にお問い合わせください!