Gabor filtresi otomobillerdeki ezikleri tespit etmek için kullanılabilir mi?


16

Arabalardaki çukurları tespit etmek için Gabor filtreleri hakkında biraz araştırma yapıyorum. Gabor filtrelerinin desen tanıma, parmak izi tanıma vb. İçin yaygın kullanımı olduğunu biliyorum.

Bir resmim var.

Ham görüntü

MathWorks Dosya Değişimi sitesinden bazı kodlar kullanarak , aşağıdaki çıktıyı aldım.

İşlenmiş görüntü

ki bu bir şekilde beklenen bir sonuç değildir. Bu iyi bir sonuç değil.

Benim senaryom aşağıdaki gibidir:

I = imread('dent.jpg');
I = rgb2gray(I);
[G, gabout] = gaborfilter1(I, 2, 4, 16, pi/2);
figure
imshow(uint8(gabout));

EDIT: Aşağıdaki resme farklı bir kod uygulama :

girdi resmi

Gabor filtrenin farklı yönelimlerinden sonra çıktı görüntüsü:

resim açıklamasını buraya girin

Düzgün tespit edilen bu DENT'i nasıl yalıtabilirim?


1
I = imread ('dent.jpg'); I rgb2gray = (I) 'e; [G, gabout] = gaborfilter1 (I, 2,4,16, pi / 2); Şekil, imshow (uint8 (gabout)); Aşağıdaki parametreleri kullandınız
vini

Ne soruyorsun?
Andrey Rubshtein

2
Gabor filtresiyle ilgili olarak, bu soruna çok uygun olduğunu düşünmenizi sağlayan nedir?
Nzbuu

Görüntü işleme, stil her zaman tekdüze ve dent düzgün olmayan, mümkün olmayan bir kenara sahip bir göçük olasılığı azdır. Göçüğün kenarının örüntü analizi olabilir.

Yanıtlar:


21

Bu son derece zor bir problem. Birkaç yıl boyunca üzerinde çalışan bir ekibin parçasıydım ve uzun süredir bu tür uygulamaları geliştirip destekledim, dent tespitinin özellikle zor bir sorun olduğunu ve ilk bakıştan çok daha zor olduğunu söyleyebilirim.

Laboratuar koşullarında veya bilinen görüntülerde bir algoritma çalışması yapmak bir şeydir; bir otoparkta görülen arabalar gibi "doğal" görüntüler için doğru ve sağlam bir sistem geliştirmek büyük olasılıkla birkaç yıl çalışan bir ekip gerektirecektir. Algoritma oluşturmadaki temel soruna ek olarak, başka birçok mühendislik zorluğu vardır.

Test ettiğiniz örnek kod kötü bir başlangıç ​​değil. Göçüğün karanlık sağ tarafındaki kenarları bulabilirseniz, arabanın kenar haritasını ding ile aynı aydınlatma ile aynı açıdan görüntülenen bilinen iyi bir arabanın kenar haritasıyla karşılaştırabilirsiniz. Aydınlatmayı kontrol etmek biraz yardımcı olacaktır.

Dikkate alınacak sorunlar şunları içerir:

  1. Aydınlatma (ilk göründüğünden çok daha zor)
  2. Monte edilmiş dış panelin beklenen 3D yüzeyi (örneğin CAD verilerinden)
  3. Bir çukuru karakterize eden kriterler: alan, derinlik, profil vb.
  4. Yanlış negatifler ve yanlış pozitifler için kriterler
  5. Göçük verilerini ve / veya harita eziklerini bir otomobil modeline (veya kelebek düzenine) kaydetmek anlamına gelir
  6. "Gerçek" göçük özelliklerini ölçmek için metodoloji ve cihaz: derinlik, alan vb.
  7. Rastgele araç örneklemesinden oluşan geniş ezik veritabanı
  8. Farklı boya renkleri ve yüzeyleri ile başa çıkmak

1. Aydınlatma Martin B'nin yukarıda belirtildiği gibi, bu sorun için doğru aydınlatma kritiktir. İyi yapılandırılmış aydınlatmada bile, özellik çizgilerinin yakınındaki küçük ezikleri, paneller, tutamaçlar arasındaki boşlukları vb.

Yapısal aydınlatma için Wikipedia girişi biraz incedir, ancak prensibi anlamaya bir başlangıçtır: http://en.wikipedia.org/wiki/Structured_light

Işık şeritleri girişleri (çukurları) ve çıkışları (sivilceleri) tespit etmek için kullanılabilir. Bir ding görmek için, ışık kaynağı ve araba arasında göreceli harekete ihtiyacınız olacaktır. Işık + kamera arabaya göre birlikte hareket eder veya araba ışık + kamerayı geçer.

Her ne kadar girişler ve çıkışlar bir ışık şeridinin kenarında görüldüğünde karakteristik görünümlere sahip olsa da, belirli bir dişin saptanabilirliği, diş şeridinin genişliğine ve ışık şeridinin genişliğine göre derinliğine bağlıdır. Bir otomobilin eğriliği karmaşıktır, bu nedenle bir kameraya tutarlı bir ışık şeridi sunmak oldukça zordur. Işık şeridi araç gövdesi boyunca hareket ettikçe, ışık şeridinin eğriliği ve hatta yoğunluğu değişecektir.

Kısmi bir çözüm, kamera ve ışık şeridinin her zaman incelenen yüzeyin normaline (3B dikey) göre tutarlı bir açıda olmasını sağlamaktır. Uygulamada, kamerayı vücut yüzeyine göre doğru bir şekilde hareket ettirmek için bir robot gerekecektir. Robotu doğru bir şekilde hareket ettirmek, kendi başına kötü bir sorun olan araba gövdesinin pozu (pozisyon ve 3D açıları) hakkında bilgi gerektirir.

Otomotiv uygulamaları için herhangi bir inceleme için, aydınlatmayı tamamen kontrol etmeniz gerekir. Bu, yalnızca seçtiğiniz ışıkları bilinen konumlara yerleştirmekle kalmaz, aynı zamanda diğer tüm ışıkları da engeller. Bu oldukça büyük bir muhafaza anlamına gelecektir. Otomobilin panelleri dışa doğru kıvrıldığından (neredeyse küresel bir yüzey gibi), etraflarındaki kaynaklardan gelen ışığı yansıtırlar. Bu sorunu büyük ölçüde basitleştirmek için, siyah kadife ile örtülmüş bir muhafaza içinde yüksek frekanslı bir floresan çubuk kullanabilirsiniz. Çoğu zaman denetim uygulamaları için böyle uç noktalara gitmek gerekir.

2. 3D yüzey Bir otomobilin dış yüzeyi karmaşık eğrilerden oluşur. Şüpheli bir noktanın bir ding olup olmadığını bilmek için, o noktayı otomobilin bilinen özellikleriyle karşılaştırmanız gerekir. Bu, 2B görüntüyü kameradan belirli bir açıdan görüntülenen 3B modelle eşleştirmeniz gerektiği anlamına gelir. Bu, hızlı bir şekilde çözülen bir sorun değildir ve bazı şirketlerin bu konuda uzmanlaşmasını sağlamak için yeterince zor.

3. Hata karakterizasyonu Akademik araştırma veya laboratuvar testleri için mevcut bir yöntem üzerinde umut vaat eden veya iyileşen bir algoritma geliştirmek yeterli olabilir. Bu sorunu gerçek ticari veya endüstriyel kullanım için düzgün bir şekilde çözmek için, tespit etmek istediğiniz ebatlar için oldukça ayrıntılı bir spesifikasyona sahip olmanız gerekir.

Bu sorunu ele aldığımızda, ezikler için makul bir endüstri veya ulusal standart yoktu (3D deformasyonlar). Yani, bir çentiği alanı, derinliği ve şekli ile karakterize etmek için üzerinde anlaşmaya varılmış bir teknik yoktu. Sadece endüstri uzmanlarının kabul ettikleri, şiddet açısından kötü, çok kötü ve marjinal olduğuna dair örnekler aldık. Bir ding'in "derinliğini" tanımlamak da zordur, çünkü ding (tipik olarak) dışa doğru eğimli bir 3B yüzeyde 3B girintidir.

Daha büyük ölümleri tespit etmek daha kolaydır, ancak daha az yaygındır. Deneyimli bir otomatik çalışan, bir araba gövdesini - eğitimsiz bir gözlemciden çok daha hızlı bir şekilde - hızlı bir şekilde tarayabilir ve pembemsi parmağınızın boyutunu hızla sığdırır. Otomatik bir sistemin maliyetini haklı çıkarmak için muhtemelen deneyimli bir gözlemcinin yeteneğini eşleştirmeniz gerekir.

4. Tespit hataları için kriterler Erken kabul edilebilir yanlış negatifler ve yanlış pozitifler için kriterler belirlemelisiniz. Bu sorunu sadece bir Ar-Ge projesi olarak inceleseniz ve bir ürün geliştirmeyi düşünmeseniz bile, tespit kriterlerinizi tanımlamaya çalışın.

yanlış negatif: göçük var, ancak tespit edilmedi yanlış pozitif: göçük olarak tanımlanan kusursuz alan

Genellikle bir ödünleşim vardır: hassasiyeti artırın ve daha fazla sayı bulacaksınız (yanlış negatifleri azaltın), ancak orada olmayan daha fazla sayı da bulacaksınız (yanlış pozitifleri artırın). Bir algoritmanın gerçekte olduğundan daha iyi performans gösterdiğine kendini ikna etmek kolaydır: doğal önyargımız, algoritmanın tespit ettiği hataları fark etmek ve tespit etmediklerini açıklamaktır. Kör, otomatik testler yapın. Mümkünse, gerçek ölçümlerin ne olduğunu bilmemeniz için bir başkasının ölümleri ölçmesini ve şiddetini atamasını sağlayın.

5. Verileri kaydedin ve / veya haritalayın Göçük, ciddiyeti ve araç gövdesi üzerindeki konumu ile karakterizedir. Konumunu bilmek için yukarıda belirtilen 2D-3D yazışma problemini çözmelisiniz.

6. Çukurların "gerçek" şeklinin belirlenmesi Çukurların ölçülmesi zordur. Keskin bir çentik ve aynı yüzey alanı ve derinliğe sahip yuvarlak bir çentik farklı görünecektir. Eziklerin mekanik yollarla ölçülmesi öznel yargılara yol açar ve daha fazla olmasa bile düzinelerce ölçmeniz gerekeceği zaman derinlik ölçerleri, cetveller vb. Kullanmak da oldukça sıkıcıdır.

Bu, imalat için herhangi bir kusur tespit projesi için çözülmesi daha zor mühendislik problemlerinden biridir: bir kusur nasıl ölçülür ve karakterize edilir? bunu yapmak için bir standart varsa, standart, denetim sisteminin ölçtüğü bir şeyle iyi bir şekilde ilişkili mi? Eğer teftiş sistemi bir ding bulamazsa "bulmalıydı" bulundu, kim suçlanacak?

Bununla birlikte, bir denetim sistemi bilinen kusurların bir örneği için yeterince iyi çalışırsa, kullanıcılar sonunda güvenmeye gelebilir ve sistemin kendisi kusur şiddetini tanımlamak için standart haline gelir.

7. Çukurların geniş veritabanı İdeal olarak, zor üreticilerin araçlarında farklı konumlarda farklı yoğunluklarda çentiklerin binlerce olmasa bile yüzlerce örnek görüntüsü olacaktır. Montaj işlemi sırasında kazaların neden olduğu ezikleri bulmakla ilgileniyorsanız, bu tür verileri toplamak uzun sürebilir. Montaj işlemi sırasında oluşan ezikler yaygın değildir.

Sadece kazaların veya çevresel zararların neden olduğu ezikleri bulmakla ilgileniyorsanız, bu farklı bir konudur. Çukur tipleri, bir oto montaj tesisindeki kazara çarpmalardan kaynaklananlardan farklı olacaktır.

8. Farklı boya renkleri ile başa çıkmak Kenar dedektörlerinin, farklı kontrast seviyelerinde görüntülerdeki kenarları tespit etme konusunda oldukça sağlam olabileceği doğrudur, ancak "değişen kontrast seviyelerinin" farklı otomotiv boyaları ve yüzeyleri için gerçekten ne anlama geldiğini görmek oldukça cesur olabilir. . Parlak siyah bir arabada harika görünen hafif bir şerit, eski boya ile beyaz bir arabada zorlukla algılanabilir.

Çoğu kamera nispeten sınırlı dinamik aralığa sahiptir, bu nedenle hem siyah parlak yüzeyler hem de beyaz mat yüzeyler için iyi kontrast elde etmek zordur. Işık yoğunluğunu otomatik olarak kontrol etmeniz gerekecektir. Bu da zor.


ben ezik alabilir görüntüleri hiçbir veritabanı var mı? ve parlak cevap hiç bu kadar çok şey bilmiyordum ...
vini

2
Bilgilerin çoğu özel olduğu için böyle bir veritabanı olduğundan emin değilim. Otomobil üreticileri, üretimde gördükleri kusurların boyutunu ve türlerini dünyaya yayınlamak istemeyebilirler. Bununla birlikte, sağlam bir ölçüm sistemi istatistikleri olmadan, örneklemeye dayalı olabilen tesisteki insan görsel muayenesine veya otomobil bayilerinden kaynaklanan hasar raporlarına dayandırılabilir. Bir bayiye gelmeden önce atılmış bir araba satılamaz, bu da para kaybı ve kaynak israfı anlamına gelir.
12'de

1
Göçük onarım atölyeleri ışık şeritleri kullanır, ancak kurulumları otomatik muayeneden daha insan denetimi için daha uygundur: exceldent.wordpress.com/tag/door-ding-repair ncfixadent.com/services/paintless-dent-repair-pdr Otomatik bir sistem için , aydınlatma muhafazasının kendisinden yansımalar da dahil olmak üzere tüm yabancı ışığı engellemek istiyorsunuz . Buna ek olarak, kamera odağını, ışık kaynağını odakta tutmak ve kenarların keskin olması ve araç özelliklerini görmek için araç yüzeyini odakta tutmak arasında bir denge kurulacak şekilde ayarlanması gerekir.
12'de

Hey yeniden düşünmek şu anda sadece aynı için bir çözüm formüle ediyorum yine de benim araştırma yardımcı olacaktır araba ezik ve çizikler vb bazı resimler almak için yardım lütfen!
vini

1
Çukurların ve çiziklerin fotoğraflarını toplamak zor olabilir. Biraz bacak çalışması yapmanız muhtemeldir. İnternette pek uygun resim yok. Bir oto tamir atölyesini arayabilir ve sahip oldukları araçların fotoğraflarını çekip çekemeyeceğinizi sorabilirsiniz; karşılığında raporlarınızda alışveriş yapabilirsiniz. Arkadaşlarınıza ve iş arkadaşlarınıza arabalarının fotoğraflarını çekip çekemeyeceğinizi sorun - aydınlatma için elde taşınabilir bir floresan ışığı getirin. Acamera telefon iyi olurdu. En iyisi, hurdalıktan çukur ve alçak paneller almak olacaktır. Aydınlatmayı vb.
Ayarlayabilmeniz

9

Gabor filtresi, böyle bir hata tespit görevi için kullanacağınız birkaç adımdan sadece birincisidir. Ayrıca, yalnızca Gabor filtresinin belirli bir yönelimini ve ölçeğini kullandığınızı unutmayın - genellikle bir dizi yönlendirme ve ölçek kullanırsınız.

Gabor filtreleri kullanan basit bir hata tespit yaklaşımının çok kaba bir taslağı aşağıdaki gibi olabilir:

  • Gabor filtresini farklı yönlerde ve ölçeklerde uygulayın
  • Her pikseli "kusur" veya "kusursuz" olarak sınıflandırmak için bir sınıflandırıcı (uygun eğitim verileri konusunda eğitilmiş) uygulayın
  • Her bir hatanın yalnızca bir kez tespit edildiğinden emin olmak ve sahte tespitleri ortadan kaldırmak için komşu piksellerden tespitleri toplayın

Bu listede olmayan ancak tipik olarak çok önemli olan bir nokta, görüntü elde etmektir. Nesnenizi aydınlatma ve kameralarınızı yerleştirme şekliniz, ortaya çıkan görüntülerdeki kusurları tespit etmenin ne kadar kolay olacağı üzerinde büyük bir etkiye sahiptir. Örnek görüntünüz o sırada mevcut olan çevresel aydınlatmayı kullanıyor gibi görünüyor - bu muhtemelen uygun değildir.

Dediğim gibi, bu sadece çok kaba bir taslak. Otomatik inceleme geniş bir alandır ve bunu yapabilmek için çok fazla uzmanlık gerektirir.


0

Hayır, olamaz. Görüntü işleme sihir değildir, daha fazla bilgi vermeniz gerekir. Arabanın nasıl görünmesi gerektiği hakkında bir fikir olmadan, bilgisayarın bir çentiği amaçlanan vücut stilinden nasıl ayırt etmesi gerekiyor?


1
onun sihirli değil biliyorum ve ben google dan aldım görüntüleri ... bu yüzden bu soruna nasıl yaklaşacağına ilişkin bazı girdi istedim .. sadece bu filtreyi kullanarak yeterli değil ...
vini

Buna oy vermek istiyorum, ama gerçek bir cevap değil. Bir yorum olmalı.
endolith
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.