Bir Elektronik Mühendisliği Perspektifinden
Geçtiğimiz aylarda, büyük bir otomotiv üreticisi için yürüttüğümüz bir projede ilginç bir problemle karşılaştık. Üretilen metal parçaların yüzey kalitesini değerlendiren sistem, özellikle gözle fark edilemeyecek kadar ince kılcal çizikleri tespit etmekte yetersiz kalıyordu.
Müşteri, bu çiziklerin bazı parçaların elenmesine ya da daha da kötüsü, son kullanıcıya ulaşmasına neden olduğunu belirtti. Klasik görüntü işleme algoritmaları (Canny, Sobel gibi) kullanılsa da, bu yöntemlerin doğruluğu oldukça düşüktü ve çok sayıda yanlış alarm üretiyordu.
Bu noktada, kendi içimizde bir çözüm geliştirmeye karar verdik. Derin öğrenme, segmentasyon, edge deployment gibi teknolojilerle oluşturduğumuz bu sistemin teknik detaylarını ve öğrenimlerimizi paylaşmanın, benzer problemlerle uğraşan meslektaşlarım için faydalı olacağını düşündüm.
İşler göründüğü kadar kolay olmayabiliyor. Bu yazıyı, bir müşteri ihtiyacından doğan, gerçek bir mühendislik probleminin AI destekli çözümünü geliştirirken nereden nereye geldik adım adım açıklamak için hazırladım.
“The moment we stopped talking features and started telling stories, people listened.”
Problem Tanımı: Neden Kılcal Çizikler Önemlidir?
Kılcal çizikler, genellikle gözle fark edilemeyecek kadar incedir.
Estetik, güvenlik ve işlevsellik açısından kritik olabilir.
Otomotiv, havacılık, elektronik üretim gibi sektörlerde büyük kalite kaybına yol açabilir.
Klasik görüntü işleme yöntemleri bu çizikleri yakalamakta yetersiz kalır.
Kullandığımız Donanım Altyapısı: Yüksek Hassasiyetli Görüntüleme
Kamera ve Optikler:
- 12 MP+ endüstriyel kameralar
- Makro lensler (50 mm) + karanlık alan aydınlatma
- Yüksek kontrast, düşük distorsiyon görüntüler
Görüntüleme Sistemi:
Gerçek zamanlı yakalama (30 fps)
Ön işleme: Gaussian filtreleme, histogram eşitleme
Derin Öğrenme ile Tespit Süreci
Segmentasyon Tabanlı Yaklaşım:
- Convolutional Neural Networks (CNN)
- Tercih edilen modeller:
- U-Net
- DeepLabV3+
Neden Segmentasyon?
- Kılcal çizikler küçüktür, klasik sınıflandırma yerine piksel bazlı çözüm gerekir. Çoğu zaman kameraların fiziksel pikselleri bizim için yeterli olmaz, AI algoritmalara sokmadan önce efektif pikseller oluşturup ara değerlerde sanal pikseller üretmemiz gerekir, fakat bu projede bu tekniği uygulamak o kadar riskliydi ki, efektif değer üretelim derken sanalda bir çizik oluşturmak işten bile değil.
Matematiksel Altyapı
- Giriş Görüntüsü: I∈RH×W×CI \in \mathbb{R}^{H \times W \times C}I∈RH×W×C
- Konvolüsyon: Filtrelerle özellik çıkarımı
- Aktivasyon: ReLU, Non-linearity katma
- Pooling / UpSampling: Öznitelik kaybı olmadan boyut küçültme/arttırma
Kayıp Fonksiyonu:
- Focal Loss küçük ve nadir çizikleri tespit için biçilmiş kaftandır. Basitçe matematiksel modeli şöyle, bu fonksiyon bize ilgi ve odağımızı çıkarak ikseller ortaya çıkaracak.
FL(pt)=−αt(1−pt)γlog(pt)FL(p_t) = -\alpha_t (1 – p_t)^\gamma \log(p_t)FL(pt)=−αt(1−pt)γlog(pt)
Veri ve Eğitim Süreci
Veri Seti Sorunu:
- Sorun her yerde, bu projenin zor olan kısmı da bu zaten, etiketli kılcal çizik verisi çok az.
Çözüm:
- Sentetik veri üretimi Görüntüye yapay çizik ekleme, bu fikir değil aslında bir teknik, yapay görme algoritmalarını akademik olarak öğrenen bir mühendis buna hakim olmalı zaten.
- Veri artırma: Döndürme, parlaklık değişimi, MixUp. Evet, uygulanan ve denediğimiz teknik tamamen bu.
Model Eğitimi:
- Transfer learning, ImageNet pretrained encoder ile yapıldı.
- Eğitim süreci GPU üzerinde optimize edildi.
Raporlama ve Sonuçların Sunumu
- Çıkış: Piksel bazlı maske + çizik koordinatları
- Her çizik için:
- Konum
- Uzunluk / genişlik
- Güven skoru (0-1 arası)
- JSON / XML formatında çıktılar ile izleyebilir olduk.
- Görselleştirme: Heatmap, overlay, OpenCV destekli arayüzler ile de sonuçlarını monitör ettik. Sonuç gayet beklediğimiz gibi idi.
Gerçek Zamanlılık ve Edge AI
- Model hızlandırma:
- 8-bit quantization
- ONNX / TensorRT
- Donanım:
- NVIDIA Jetson Xavier, Orin Nano edge cihazları, bu cihazlar olmadan herhangi bir CPU ile çok kısa sürelerde analiz yapmak mümkün değil, tabi ki müşterinin beklentisi her bir dakikada bir ürün kontrolü değil ise 🙂
- Performans:
- 25–30 ms içinde karar verme süresi (1 frame)
Sonuç ve Özet
- AI, kılcal çizik tespitini artık güvenilir, hızlı ve hassas hale getiriyor.
- Derin öğrenme mimarileri (U-Net, DeepLab) ile mikro düzeyde segmentasyon mümkün olabildi.
- Optimizasyonlarla edge cihazlarda bile gerçek zamanlı çalıştırılabiliyor.
- Raporlama sistemleri ile üretim hatlarında doğrudan kullanılabilir hale geliyor.
Soru & Cevap
Bu sistemi sizce kendi üretim hattınıza entegre etmek ne kadar zaman alırdı?




