Matlab'ın Görüntü İşleme Toolbox Endüstriyel Muayene için
Modern üretimde, hatanın marjı sıfıra yakın bir şekilde parladı. Tek bir hatalı bileşen yüksek hızlı geri dönüşlere, güvenlik tehlikelerine ve marka hasarlarına giriş yapan birçok başarılı görme sisteminin temeline – bu nedenle üretim dışı bir parçası haline geldi.Ancak geleneksel el yıkama yöntemleri hem de yüksek hızlı bir şekilde sabit olmayan bir şekilde sabit olmayan bir şekilde, makine vizyonunun girebildiği yer burası.
Endüstriyel Muayene ve Makine Vizyon
Endüstriyel denetim, geniş bir görev yelpazesini kapsar: yüzey bitirmek, boyutlarını kontrol etmek, kirleticileri tespit etmek, doğru montaj sağlamak ve kodları veya etiketleri okumak. Makine vizyonu sistemleri bu görevleri kameraları ve görüntü işleme yazılımı kullanarak otomatikleştirmek.İnsan denetimleri üzerindeki avantajlar açık - yüksek hız, tutarlı doğruluk ve fabrika otomasyonu ile entegrasyon yeteneği.
Alet kutusu bir ada değil; MATLAB'in daha geniş ekosistemi ile entegre eder, 3D vizyon için Bilgisayar Vizyon Toolbox, sinir ağları için Deep Learning Toolbox ve özel uygulamalar için otomatik olarak çalışan aletler için otomatik olarak çalışır.For Industrial testing, Image Processing Toolbox is the workhorse, KLM algılama, ve model tanıma dahil olmak üzere yüzlerce işlev sunar.
Kontrollü Görüntü İşleme Aracı kutusu Anahtar Yetenekleri
Resim Edinme ve I /O
Herhangi bir algoritma çalıştırılmadan önce, görüntüler güvenilir bir şekilde ele alınmalıdır. araç kutusu, Image Acquisition Toolbox (a arkadaşı ürünü) aracılığıyla geniş bir çeşitlilikteki kameraları yönlendirmektedir.GigE Vision, USB3 Vision, Kamera Link ve birçok özel kamera ailesi için, BMP) ve tıbbi benzeri denetim görevleri için DICOM gibi özel formatlar veya donanımlar için tasarlanmıştır.
Preprocessing and improvement
Gerçek dünya endüstriyel görüntüler nadiren temizdir. Toz, eşitsiz aydınlatma, lens glare ve sensör gürültüsü tüm bozulan görüntü kalitesi. araç kutusu, analiz için görüntüler hazırlamak için tam bir filtre işlemi sunuyor:
- [FONT:0]Noise azaltma: [Döntgen:[Döntgen: 0) Ortam: [Döntgen: 0) Orta hızlı kameralarda yaygın olarak kullanılan, Gaussian bulanık, ikili filtreleme ve non-yerel olmayan filtreleme, özellikle de yüksek hızlı kameraların kaldırılması için etkilidir.
- [FONT=0)Contrast ayarlaması:[Dönetici:[Dönetici:0)[Dönetici:0))[Dönetici:[Dönetici:0)))))))))))))))))) CLAHE, hataları tespit için aydınlatıcı aydınlatma ile görüntülenenler için değerlidir.
- [FONT:0)Şeytan ve kınayanların (Dönder) ve (veyan) sönüllün) sûresi, sûrenin, sûrenin, sûrenin, sûrenin, sûrenin, sûrenin, sûrenin, sûrenin, sûrenin, sûrenin, sûrûtûrenin, sûrenin, sûrenin, sûrenin, sûrûrenin, sûrenin, sûrenin, sûrenin, sûrenin, sûrenin, sûrenin, sûresi ve sûresi ve sûresi ve sûrenin, sûresi ve sûresi ve sûrenin sûresi ve sûresi ilerûresi ilerûrenin sûresi ilerûresiyânîmânîmânîmânîmânîmânîmânîmânî
- [FONT:0]Morphological işlemler:[Dönetici: [Dönetici: 1) Dilasyon, erozyon, açılış, kapanış ve üst-hat dönüşümleri. Morphological processing birçok hata tespit rutininin temelidir - örneğin, karanlık bir arka plana karşı küçük kusurları vurgulamak için üst-hat filtresini kullanarak.
Doğru işlem öncesi adımları seçmek hata türüne ve görüntülemeye bağlıdır. Mühendisler genellikle örnek görüntüler içeren bir MATLAB senaryosu yaratır, filtrelerin bir araya gelmesi ve optimal bir boru hattı üzerinde bir araya gelme sonuçları uygularlar.
Segmentasyon: Bölgeleri İlgi Alanları
Segmentasyon bölümleri anlamlı bölgelere bir görüntü oluşturabilir. denetimde, potansiyel kusurları, bölüm sınırlarını ölçmek veya özellikleri tanımlamak istiyoruz. araç kutusu birkaç segmentasyon yaklaşımı sağlar:
- [FONT:0]Thresholding:[Dönetici: [Dönetici:0) Global (Otsu'nun yöntemi), yerel (a Adaptasyon eşleme), ve çok seviyeli eşleme. Otsu'nun yöntemi, her bir piksel mahallesi için uyumsuz aydınlatma ile uyumlu bir eşleme işlemidir.
- [FONT-based segmentasyon: [Dönetici: [Dönetici: 0] Canny, Sobel, Prewitt, Roberts, and Laplacian of Gaussian edge dedektörleri. Canny edge de iyi yerelleştirme ve düşük yanlış pozitif oranı nedeniyle yaygın olarak kullanılır.
- [FONT:0)Yöneci segmentasyon: [Dönder: 1) Sud Dönüşüm, aktif kontraseler (snakes), ve bölünmüş-ve-merge algoritmaları.Sushed transformasyon nesneleri ayrıştırmak için güçlüdür, ancak çoğu zaman morfolojik işaretleyici kontrolü gerektirir.
- [[Düzücük- bazlı segmentasyon: [Döneticileri kullanarak) renk alanları (RGB, HSV, L*a*b*) belirli renk aralıklarını izole etmek için, baskılı devre panjurları (PCB) gibi görevlerin doğru satılan maske rengi veya gıda ürünlerindeki yabancı renkli kirleticileri tespit edilmesi önemlidir.
- [FONT=0) Deep learning segmentasyon: [Dönetici: [Dönetici:0) Resim İşleme Aleti'ne yerli olmasa da, semantik ve örnek segmentasyon ağları Deep Learning Toolbox'tan ithal edilebilir.The Image Processing Toolbox, “semantics” ve “PoziformLabelDatastore” bu ağları değerlendirmek ve çıktılarını işlemek için sağlar.
Özel Ekstraksiyon ve ölçüm
Bir zamanlar nesneler segmente edildi, onları ölçtük. araç kutusu altın standart "bölge" fonksiyonunu içeriyor, bu da onlarca mülk hesaplar: alan, perimeter, boks, sentoid, ecsanity, büyük ve küçük eksen uzunluğu, yönelim, Euler numarası ve daha fazlası.
- [FONT:0)Geometri:[DDDDDD:[Döneticileri kontrol etmek, deliklerin merkezileştirildiğini kontrol etmek, çaplar hoşgörü içinde ve köşeler çipsiz değildir.
- [FONT=0)Texture:[[Dönetici) gri seviyeli ko-occurrence matrix (GLCM) özellikleri -kontrast, korelasyon, enerji, homogeneity – yüzey anomalilerini çizerek tespit etmek.
- [FONT:0)Intensity özellikleri:[Dönetici: [Dönetici: 0,3 sapma ve bir bölgedeki gri ölçekli değerlerin skewness of the griscale values in a metal casting, for example, appears as a dark, dar region who intense differ from the entire material.
- [FONT=0]Moment invariants:[Döneticiler ve Zernike anları çeviri, rotasyon ve ölçeklendirmeye bağlı olarak kullanılır. Bunlar logoları, etiketleri veya bölüm yönlendirmelerini tanımak için kullanılır.
Alet kutusu ayrıca gelişmiş özellikler dedektörleri (SURF, MSER, BRISK) genellikle bilgisayar Vision Toolbox altında destekler, ancak temel nokta algılama (Harris köşesi, Hızlı) görüntü işlemede kullanılabilir.
Şekil Tanımlama ve Sınıflandırma
Basit eşleme her inceleme problemini çözemez. Karmaşık hata modelleri için makine öğrenmesi veya derin öğrenme gereklidir. Görüntü İşleme Toolbox, İstatistik ve Makine Öğrenme Toolbox ile entegre eder ve Deep Learning Toolbox.
- [FONT:0)Extract özellikleri[[[Döntilmişler[[Döntilmişler[[Döntilmişler) etiketli eğitim görüntüleri (iyi vs. ayıp).
- [FONT:0] Bir sınıflandırıcılık [[Dönetici: 1))) (Demek vektör makinesi, rastgele orman, k-nearest komşu veya bir convolutional sinir ağı).
- [FONT:0]Validate[[[Dönetici:0) bir iş ayarlı ve ayar parametreleri ile.
- [FONT:0)İşçilik denetim sisteminde eğitimli model.
Alet kutusu, etiketli veriler yetersiz olduğunda klasik sınıflandırıcıların derin öğrenmelerini sağlamak için bir görsel "görünür" uygulaması sağlar.For deep learning, the 'trainNetwork' function can be used directly on image arrays or datastores. Many Industrial testing team find that a klasik classifier on well-chosen features outperforms deep learning when label data is less -and the Image Processing Toolbox does it simple to test both approach.
Tamamlı bir denetim sistemi inşa edin: Bir Adım-Adım Yaklaşım
Adım 1: Sistem Özellikleri
Hata türlerini tanımlamakla başlayın, boyut aralıkları, gerekli olan bağlantı ve doğruluk (belki kabul/reject oranları). Örneğin: "Detect scratches more than 2 mm on a flat metal yüzey hareket 1 m/s, maksimum false bir geri ödeme oranı ile 0.1% 0.1.Bu sürücüler kamera kararı, lens seçimi, aydınlatma ve algoritma karmaşıklığı.
Adım 2: Resim Devral
Yeterli çözünürlük ve çerçeve oranı ile bir kamera seçin. MATLAB'in "imaqtool" kamerayı yapılandırın, pozlama, kazan ve spam modundan sinyal alın. Üretimde, bir PLC veya encoder senkronize yakalama noktalarının bir video dosyasına giriş yapabilir veya doğrudan yorum için bellek için bellek için oturum açma.
Adım 3: Kalibrasyon ve Referans
Boyut ölçümleri için, kamera kalibrasyonu önemlidir. Bilgisayar Vizyon Toolbox, ölçüm öncesi görüntüleri doğrulamak için "cameraCalibrator" uygulaması için bir kontrol cihazı kullanarak kanal parametrelerini (fx, fy, cx, cy) ve lens deme katları uygular.The Image Processing Toolbox, ölçümden önce doğru görüntüler için "tur.
Adım 4: Prototip Algoritma Development
Bir temsilcinin görüntülerini kullanarak (hem hatasız ve çeşitli kusurları ile), algoritmayı interaktif olarak MATLAB işlevi olarak geliştirir. Örneğin, Görüntü Segmenter[Döneticileri 1) ve [[Döneticileri:2) ThRenkli[Döneticileri 3 ), farklı segmentasyon yöntemlerini deneyerek, kodu bir MATLAB işlevi olarak aktarabilirsiniz. Örneğin, Görüntü Segmenter uygulaması otomatik olarak aktif kontraseler veya grafikler kullanan kod üretir.
Adım 5: Batch Processing ve Optimizasyon
Bir aday algoritması kodlandığında, büyük bir etiketli görüntüler üzerinde çalışır. "parfor" (Parallel Computing Toolbox) birden çok CPU çekirdeği veya GPU'lar üzerinde değerlendirmeyi hızlandırmaya devam eder. Performansı ölçmek için karmaşık karışıklık matrisi ve ROC eğrileri. Tweak eşleri ve morfolojik parametreler.
Adım 6: Gerçek Zaman Uygulama ve Bütünleşme
Bir üretim hattında dağıtım için, algoritma tahsis edilen döngü zamanında çalıştırmak zorundadır. MATLAB kodu birçok fonksiyon için C/C++'a dönüştürülebilir, bu da gömülü cihazlar üzerinde yürütme sağlar (örneğin, SMT Jetson, Intel Processors, veya ARM Cortex).
Adım 7: Bakım ve Yükseltler
Üretim koşulları değişir: yeni bölüm tasarımları, farklı aydınlatma, kamera yaşlanma. MATLAB senaryolarının modüler doğası, sınıflandırıcıları yeniden kurmak, eşleri ayarlamak veya tüm sistemi yeniden yazmaksızın işlem öncesi adımları takas etmek.Logging inceleme sonuçları ve yeniden eğitim modelleri periyodik olarak en iyi bir uygulamadır.
Gerçek Dünya Uygulamaları ve Vaka Çalışmaları
Otomotiv: Weld Seam Muayenesi
Otomotiv üretiminde, şasi bileşenleri üzerinde kaynak dikişleri sürekli ve özgür olmalıdır. yapılandırılmış bir ışık kamerasını kullanarak, bir MATLAB tabanlı sistem deniz eşiği ile karşı karşıya kalır. Pre processing removes on a Truck production line mitigates by% 30 Karşılaştırmalı bölge, ve morfolojik işleme boşlukları.
Elektronik: PCB Pification
Basım devreleri eksik kapasitörler, dönen IC'ler veya satılan köprüler olabilir. MATLAB kullanarak bir görüntü oluşturabilir, L*a *b * uzay korelasyonuna rağmen, iki görüntüyü ortadan kaldırır.İkinci kodda 10 tahtadan elde edilebilir bir şekilde ayırt edilir.
Farm: Pill Fırkların Presleri
Fırka paketleri, çatlaklar olmadan doğru sayıda hap içermelidir veya eksik tabletler. Her bir sualtı sırt ışığı ışıklandırmak için her bir kutuyu aydınlatmak gerekir.The Image Processing Toolbox's "im FindCircles' (Hough transform) Beklenmeyen hap sayımı veya düzensizlik ile ilgili olarak eğitilmiş bir makine öğrenme sınıfı için.
OpenCV ve Diğer Araçlarla Karşılaştırma
OpenCV bilgisayar vizyonu için popüler bir açık kaynak kütüphanesidir ve onun erdemleri vardır - malmiliarlık, maliyet ve büyük bir topluluk. Ancak, endüstriyel denetim için, MATLAB farklı avantajları sunar:
- [FONT=0)Integrated environment:[Dönetici:[Dönetici:0)[Dönetici geliştirme ortamı:[Dönetici:0) MATLAB IDE, canlı senaryolar ve uygulamalarla, prototyping hızlandırır. OpenCV genellikle daha manuel kodlama ve yapılandırma gerektirir.
- [FONT:0) İleri görselleştirme: [Dönetici: [Dönetici] Etkileşimli arsa, görüntü montajları ve UI oluşturma (App Designer) mühendisleri fabrika operatörleri için prototip GUI oluşturmalarına izin verin.
- [FONT:0) Sertware desteği:[Dönetici:[Dönetici:0) MATLAB, özel sarmalamalara gerek kalmadan birçok endüstriyel kameraya ve DAQ cihazına sorunsuz bir şekilde bağlanır.
- [FONT:0)Kod nesli:[Dönetici:[Dönetici:0)Komş nesli:[Dönetici:0) MATLAB Coder, özellikle de gömülü hedef özel kütüphaneleri kullanırken, el yazmalı OpenCV'den daha hızlı çalışan C/C++ kodu üretebiliyor.
- [FONT:0]Depre ve dokümantasyon:[Döneticiler, geniş bir dokümantasyon, webinars ve teknik destek sunarlar – bir üretim hattının aşağılandığında kullanılabilir.
Bu, OpenCV hala yaygın olarak kullanılıyor ve "bulutların" MATLAB'in "bwboundaries" ile ilgili olarak yaklaşık olarak "seçmiş bilgisayar vizyonu sayfasına bağlı olduğunu" varsayıyor.
Ortak Pitfalls ve Them'dan Nasıl Kaçırmak
- [FONT:0)Bir segmentasyon yöntemine göre: Tüm görüntüler için tek bir yöntem çalışmıyor. Test multiple teknikleri (thresholding, sushed, aktif konler) ve bir cascaded yaklaşımı (örneğin, ince analiz ile takip edilen koarse segmentasyon).
- [FONT:0) Aydınlatmayı görmezden gelmek: [Dönetici: [Dönetici:0]En iyi algoritma bile kötü aydınlatmaya yatırım yapar. Uygun aydınlatmaya yatırım -ve üretim yolunda tutarlılık sağlar.
- [FONT:0] Yeterli eğitim verileri: [Döneticileri için, çeşitli koşullar altında, çeşitli koşullar altında, çeşitli koşullardan görüntü toplamak için, aşırı yüklemeden kaçınmak için (uçlama, ölçeklendirme, gürültü ek) MATLAB'de uygulanan.
- [FONT:0]Neglecting system latency:[Dönetici: 0,2|Dönetici: 0,0) Kodunuz MATLAB Profiler ile ve vektörize operasyonlarla yavaş döngüler değiştirin.
- [FONT=0)Poor kalibrasyon: [Dön ekran görüntüsü olmadan , boyut ölçümleri anlamsızdır.Rektif kameralar düzenli olarak ve kalibrasyonu doğrulamak için referans hedeflerini kullanır.
Kontrol için MATLAB'ı benimsemenin Faydaları
- [FONT:0)Rapid gelişimi:[Dönetici:0) Uygulamaya dayalı iş akışı ve büyük işlevlerin kütüphanesi haftadan ziyade günlerde bir prototip inşa edilebilir.
- [FONT:0) Adaylık:[Dönetici:[Dönetici:0)[Dönetici:[Dönetici:0)))))) Her adım üzerinde kontrol, yanlış pozitifleri ve negatifleri en aza indirir, maliyetleri tasarruf eder ve kaliteli itibarı geliştirir.
- [FONT:0]Flexability:[Dönetici:[Dönetici: 0) Aynı kodbase, az değişiklik ile farklı ürünler ve kusurlarına adapte edilebilir - sadece birkaç parametre ayarlamak.
- [FONT:0)Integration:[Dönetici:[Dönetici:0) MATLAB arayüzleri kolayca fabrika otomasyon sistemleri, veritabanı (önlenebilirlik için) ve analitik için kurumsal yazılım.
- [FONT:0)Scalability:[Dönetici:[Dönetici: 0) Bir test tezgahında çalışan kod, özel bir makine için derlenebilir veya MATLAB Production Server kullanarak birden çok istasyona dağıtılabilir.
Sonuç: MATLAB ile Otomatik Denetimin Geleceği
Endüstri 4.0 ve "zero-defect" üretimine doğru iterken, otomatik denetim talebi yalnızca risk ve zaman-çalımlama aracı kutusu, bu tür sistemler inşa etmek için kapsamlı, test edilmiş bir platform sağlar.Eğer basit bir varlık / işaret kontrol veya sofistike bir sinir tabanlı bir notlama sistemi oluşturabilirsiniz, ancak araç kutusunın derinliği ve kullanılabilirliği riski ve zaman-çalı işlenmeyi azaltacaktır.