Cześć, chcę zrobić program który wysegmentuje i zaznaczy obszary na obrazie gdzie występują wklęsłe kształty np. litera C. Mam już kod który odpowiada za wstępną binaryzację i detekcję konturów:

private void imageTopMenuOption_Click(object sender, EventArgs e)
{
    if (imageInput == null)
    {
        MessageBox.Show("Najpierw wgraj obraz :)");
    }
    else
    {
        var temp = imageInput.Convert<Gray, byte>().ThresholdBinaryInv(new Gray(50), new Gray(255));

        VectorOfVectorOfPoint contours = new VectorOfVectorOfPoint();
        Mat m = new Mat();
                
        CvInvoke.FindContours(temp, contours, m, Emgu.CV.CvEnum.RetrType.External, Emgu.CV.CvEnum.ChainApproxMethod.ChainApproxSimple);

        for (int i = 0; i < contours.Size; i++)
        {
            double perimeter = CvInvoke.ArcLength(contours[i], true);
            VectorOfPoint approx = new VectorOfPoint();
            CvInvoke.ApproxPolyDP(contours[i], approx, 0.04 * perimeter, true);


            CvInvoke.DrawContours(imageInput, contours, i, new MCvScalar(0, 0, 255), 1);
        }

        pictureBoxResult.Image = imageInput.Bitmap;
    }
}

Zwraca to jedynie poprawną detekcję krawędzi w tym tekstu na obrazie. Ale za nic nie wiem co dalej, a chyba już połowę internetu w tym przeszukałem więc bardzo prosiłbym o pomoc. Z góry dziękuję ;)