(Ders 07) Aforge.Net ile Otsu Threshold (C#)

(Ek1) Aforge.Net Kaynakları (C#)
(Ders 08) C# ile Şekil Çizme İpuçları

Size faydalı olduysa, sosyal medyada paylaşarak bize destek olun. Teşekkürler.

Ekran Görüntüsü:

Açıklama:

Threshold işlemi belirli bir eşik değerine göre siyah ve beyaz resim yapmaktır.

Otsu Threshold işleminde ise bu eşik değeri otomatik belirleniyor.

Bu işlem ne işe yarıyor diyecek olursanız.

En basitinden bir resimde nesne arama işleminde, plaka tanıma işleminde ve ocr (resimden karakter okuma) işlemlerinde kullanılıyor.

Eklenecek Referans (dll dosyası):

AForge.Imaging.dll

Visual Studio Projesini İndir

Program Kodu:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using AForge.Imaging.Filters;
using System.Drawing.Imaging;

namespace Otsu_Algoritmasi
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            Bitmap kaynakResmi, filtreliResim;
            OtsuThreshold otsuFiltre = new OtsuThreshold();
   
            kaynakResmi = (Bitmap)System.Drawing.Image.FromFile("resim.jpg");

            //orjinal resim gösteriliyor
            pictureBox1.Image = kaynakResmi;
            
            //resmi eğer renkliyse önce griye çeviriyor sonra filtre uyguluyor
            //resim zaten griyse direk filtre uyguluyor
            filtreliResim = otsuFiltre.Apply(kaynakResmi.PixelFormat != PixelFormat.Format8bppIndexed ? Grayscale.CommonAlgorithms.BT709.Apply(kaynakResmi) : kaynakResmi);

            //filtre uygulanan resim gösteriliyor
            pictureBox2.Image = filtreliResim;
            
            //Uygulanan Threshold Değeri form başlığında görünüyor
            this.Text = "Threshold Değeri : " + otsuFiltre.ThresholdValue.ToString();
        }
    }
}

 

Size faydalı olduysa, sosyal medyada paylaşarak bize destek olun. Teşekkürler.

(Ek1) Aforge.Net Kaynakları (C#)
(Ders 08) C# ile Şekil Çizme İpuçları