Kameradan Plaka okuma
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
-
- Üye
- Mesajlar: 360
- Kayıt: 10 Nis 2006 09:07
Kameradan Plaka okuma
Merhaba
güvenlik kamerasından gelen video / resime göre aracın plakasını okuma işlemi nasıl yapılıyor?
Bu konuda başlangıç için neyi araştırmalı ve hangi programla yapılmalı?
Konuya başlangıç için bana ipucu verebilecek kimse var mı?
Sayglıar.
güvenlik kamerasından gelen video / resime göre aracın plakasını okuma işlemi nasıl yapılıyor?
Bu konuda başlangıç için neyi araştırmalı ve hangi programla yapılmalı?
Konuya başlangıç için bana ipucu verebilecek kimse var mı?
Sayglıar.
-
- Üye
- Mesajlar: 62
- Kayıt: 18 Eyl 2011 02:31
Re: Kameradan Plaka okuma
bildğiğim kadarıyla analog kamera ile yapacaksan bu işi DVR kart veya DVR kayıt cihazına uygun bir yazılık olması gerekir yok ip kamera ile yapacaksan ozamanda ip kameraya uyumlu bir yazılım yapman gerekecek mesela er ip kamera azılımı bütün ip kamera markalarını desteklemez. yinede yapmak istesen hemen hemen bütün dillerle yapabilirsin bunun için en ideali delphi sanırım çünkü kamera izleme için gerekli componentler onda var. bende merak ettim aslında bilen bi arkadaş varsa detaylı açıklama yaparsa iyi olur benim tahminim böyle.
-
- Üye
- Mesajlar: 360
- Kayıt: 10 Nis 2006 09:07
Re: Kameradan Plaka okuma
şöyle bi çalışma buldum.
http://derindelimavi.blogspot.com/2010/ ... ma-ii.html
burada Opencvsharp kütüphanesi kullanılmış. Ama daha çözemedim.
http://derindelimavi.blogspot.com/2010/ ... ma-ii.html
burada Opencvsharp kütüphanesi kullanılmış. Ama daha çözemedim.
Re: Kameradan Plaka okuma
tam doğru yerdesinz, devam edin.
Re: Kameradan Plaka okuma
Kameradan gelen görüntü eğer tiff formatında ise basitce plakanın yerini tespit ederek resmi OCR işlemine tabi tutacaksın ve sana oradan okuyabildiği metinleri getirecek. OCR için gri tonlama ve 300dpi tiff formatı en iyi sonucu verir.
C# kullanacaksan ofisin içinde MODI var onu kullanabilirsin, açık kodlu Tesseract var, ücretli Abby ve Leadtools var. Tesseract gayet başarılı ben onu kullanıyorum.
MODI ile OCR
Tesseract ile OCR
C# kullanacaksan ofisin içinde MODI var onu kullanabilirsin, açık kodlu Tesseract var, ücretli Abby ve Leadtools var. Tesseract gayet başarılı ben onu kullanıyorum.
MODI ile OCR
Kod: Tümünü seç
using MODI;
internal class OcrClass
{
private const string pattern = @"[\W]";
private readonly List<string> _liste = new List<string>();
private Document doc;
private Word word;
public string FileName { get; set; }
// sadece metinleri getirir sayı için regexi değiştirmelisin
public List<string> ReadOcr()
{
if (!File.Exists(FileName)) return _liste;
string regex = "";
//if (!fileName.Contains("tif")) return liste;
try
{
doc = new Document();
doc.Create(FileName);
doc.OCR(MiLANGUAGES.miLANG_TURKISH, true, true);
foreach (Word s in
from Image image in doc.Images select image.Layout into layout from Word s in layout.Words select s)
{
word = s;
regex = Regex.Replace(word.Text, pattern, "");
//if (regex.Length > 0 )
_liste.Add(regex);
}
doc.Close(false);
return _liste;
}
catch (Exception ex)
{
return _liste;
}
}
}
Kod: Tümünü seç
private void OCR()
{
try
{
var path = @"c:\NuancePDF-OCR-conversion-example.tif";
Bitmap image = new Bitmap(path);
var tessdata = @"..\tessdata";
pictureBox1.Image = image;
tessnet2.Tesseract ocr = new tessnet2.Tesseract();
// ocr.SetVariable("tessedit_char_whitelist", "0123456789"); // sadece sayı olacaksa
ocr.Init(tessdata, "eng", false); // doğru tessdata ayarı için
List<tessnet2.Word> result = ocr.DoOCR(image, Rectangle.Empty );
foreach (var word in result)
listBox1.Items.Add("{" + word.Confidence + "} - " + word.Text + " - " +word.LineIndex);
}
catch (Exception ex)
{
var error = ex.Message;
}
}
-
- Üye
- Mesajlar: 3
- Kayıt: 09 Nis 2016 01:04
Re: Kameradan Plaka okuma
Merhaba. Yukarıda yazdığınız MODI ve tessecart kodu çalışıyor mu ? Ben projemde plaka bölgesini buldum ve şuan sadece karakterleri okuma kısmı kaldı. Nasıl yaparım diye düşünüyorum. Öneriniz nelerdir?
- sabanakman
- Kıdemli Üye
- Mesajlar: 3077
- Kayıt: 17 Nis 2006 08:11
- Konum: Ah bi Antalya olaydı keşke (Ankara)
Re: Kameradan Plaka okuma
İlgili plaka bölgesini ayrı bir resim olarak kayıt edip bunu tesseract ile çözmeyi deneyebilirsiniz. Geçenlerde bir örnek denemiş ve çalıştırmıştım ama sayfayı tekrar bulamıyorum. Örneği, indirme geçmişimden bulup gönderiyorum . Daha 5 gün öncesine kadar bu konularla hiç ilgilenmediğim için böyle bir şeyden haberim de yoktu ama bu hafta bulup denediğim bir örnek bu da .
Tesseract OCR - Delphi - Sample
Bağlantının kaybolması ihtimaline karşın Yandex Disk indirme linki..:TesseractOCR_Delphi_Sample
Dikkat etmek gereken iki nokta var. Birincisi, FTesseract := TTesseract.Create ile oluşturulan nesneye ilk parametrede tesseract.dll dosyasını ikinci parametrede ise tessdata hangi klasör içinde ise (tessdata hariç olacak şekilde) belirtmek gerekiyor. tessdata klasöründe hangi dillere göre çözümleme yapılacaksa ona göre karakter bilgi veritabanı bulunuyor sanırım. Ayrıca plaka için bu klasörde sadece ingilizce (eng.traineddata) karakter tablosu bulunsa yeterli olur sanırım. Burası ne kadar kalabalıksa çözüm o kadar gecikiyor.
Tesseract OCR - Delphi - Sample
Bağlantının kaybolması ihtimaline karşın Yandex Disk indirme linki..:TesseractOCR_Delphi_Sample
Dikkat etmek gereken iki nokta var. Birincisi, FTesseract := TTesseract.Create ile oluşturulan nesneye ilk parametrede tesseract.dll dosyasını ikinci parametrede ise tessdata hangi klasör içinde ise (tessdata hariç olacak şekilde) belirtmek gerekiyor. tessdata klasöründe hangi dillere göre çözümleme yapılacaksa ona göre karakter bilgi veritabanı bulunuyor sanırım. Ayrıca plaka için bu klasörde sadece ingilizce (eng.traineddata) karakter tablosu bulunsa yeterli olur sanırım. Burası ne kadar kalabalıksa çözüm o kadar gecikiyor.
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
_________________
Derin olan kuyu değil kısa olan iptir. - .
-
- Üye
- Mesajlar: 3
- Kayıt: 09 Nis 2016 01:04
Re: Kameradan Plaka okuma
Hocam sizin sample programı indirdim ancak çalıştırdığımda hata alıyorum. Bir de kaynak kodları olsa bana yol gösterme açısından çok iyi olurdu ama göremedim kaynak kodunu
- sabanakman
- Kıdemli Üye
- Mesajlar: 3077
- Kayıt: 17 Nis 2006 08:11
- Konum: Ah bi Antalya olaydı keşke (Ankara)
Re: Kameradan Plaka okuma
Kodlardan kastınız tesseract projesi ise bu açık kaynak bir C++ projesidir. Bu projeyi API olarak ele alıp Delphi üzerinde kullanan örnek program ise kodlarıyla ekte vardı zaten
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
_________________
Derin olan kuyu değil kısa olan iptir. - .
Re: Kameradan Plaka okuma
Merakımdan denemek için indirdim. Tessdata Klasörünü üst klasöre çıkarırsan çalışır. Proje çalışıyor fakat sağlıklı çalıştığını söyleyemem.
-
- Üye
- Mesajlar: 3
- Kayıt: 09 Nis 2016 01:04
Re: Kameradan Plaka okuma
Tessecart ile bu işlem üzerinde bira çalışılınca yapılabiliyor. Geliştirmeye açık yani. Ancak merak ettiğim bir nokta daha var. Plaka bölgesini yani dikdörtgen kısımı çıkartıp tessecart kullansak daha verimli olabiliyor. Plaka bölgesini nasıl bulabiliriz hazır bir kodu veya algoritması var mı acaba ?
- sabanakman
- Kıdemli Üye
- Mesajlar: 3077
- Kayıt: 17 Nis 2006 08:11
- Konum: Ah bi Antalya olaydı keşke (Ankara)
Re: Kameradan Plaka okuma
C++ dilinde OpenCV kütüphanesini kullanarak anlatan bir kitap eğer bu dilden anlıyorsan yardımı olacaktır. Yolun biraz uzun, sana çalışmalarında başarılar.
viewtopic.php?f=20&t=35248&p=190342
viewtopic.php?f=20&t=35248&p=190342
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
_________________
Derin olan kuyu değil kısa olan iptir. - .