ตัวกรอง Gabor สามารถใช้สำหรับตรวจจับรอยบุบในรถยนต์ได้หรือไม่?


16

ฉันกำลังทำการวิจัยเกี่ยวกับตัวกรอง Gabor เพื่อตรวจจับรอยบุบในรถยนต์ ฉันรู้ว่าตัวกรอง Gabor มีการใช้อย่างกว้างขวางสำหรับการจดจำรูปแบบการจดจำลายนิ้วมือ ฯลฯ

ฉันมีรูป

ภาพดิบ

ใช้รหัสจากเว็บไซต์ MathWorks File Exchange ฉันได้ผลลัพธ์ต่อไปนี้

รูปภาพที่ดำเนินการ

ซึ่งอย่างใดไม่ใช่เอาท์พุทที่เราคาดหวัง นี่ไม่ใช่ผลลัพธ์ที่ดี

สคริปต์ของฉันเป็นดังนี้:

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

แก้ไข: การใช้รหัสที่แตกต่างกับภาพต่อไปนี้:

ภาพอินพุต

ภาพที่ส่งออกหลังจากทิศทางที่แตกต่างกันของตัวกรอง gabor:

ป้อนคำอธิบายรูปภาพที่นี่

ฉันจะแยก DENT นี้ซึ่งตรวจพบได้อย่างถูกต้องได้อย่างไร


1
I = imread ('dent.jpg'); I = rgb2gray (ฉัน); [G, gabout] = gaborfilter1 (I, 2,4,16, pi / 2); รูป imshow (uint8 (gabout)); ได้ใช้พารามิเตอร์ต่อไปนี้
vini

คุณจะถามอะไร
Andrey Rubshtein

2
อะไรคือสิ่งที่เกี่ยวกับตัวกรอง Gabor ที่ทำให้คุณคิดว่ามันเหมาะกับปัญหานี้หรือไม่?
Nzbuu

ความเป็นไปได้ของการประมวลผลภาพลักษณะเป็นแบบสม่ำเสมอเสมอและรอยบุ๋มไม่เหมือนกันมีโอกาสน้อยที่จะเป็นรอยบุ๋มที่มีขอบไม่สม่ำเสมอ มันอาจเป็นการวิเคราะห์รูปแบบของขอบของบุ๋ม

คำตอบ:


21

นี่เป็นปัญหาที่ยากมาก ฉันเป็นส่วนหนึ่งของทีมที่ทำงานกับมันมาหลายปีแล้วและได้มีการพัฒนาและสนับสนุนแอปพลิเคชั่นอื่น ๆ เป็นเวลานานฉันสามารถพูดได้ว่าการตรวจจับบุ๋มเป็นปัญหาที่ยุ่งยากเป็นพิเศษและยากกว่าที่คิดไว้มาก

การมีอัลกอริทึมทำงานภายใต้สภาพห้องปฏิบัติการหรือภาพที่รู้จักเป็นสิ่งหนึ่ง การพัฒนาระบบที่แม่นยำและแข็งแกร่งสำหรับภาพที่ "เป็นธรรมชาติ" เช่นรถยนต์ที่เห็นบนลานจอดรถน่าจะต้องใช้ทีมที่ทำงานเป็นเวลาหลายปี นอกเหนือจากปัญหาหลักของการสร้างอัลกอริทึมแล้วยังมีปัญหาด้านวิศวกรรมอื่น ๆ อีกมากมาย

โค้ดตัวอย่างที่คุณทดสอบไม่ได้เป็นการเริ่มต้นที่ไม่ดี หากคุณสามารถหาขอบรอบ ๆ ด้านมืดด้านขวาของรอยบุบคุณสามารถเปรียบเทียบแผนที่ขอบของรถกับ ding กับแผนที่ขอบของรถดีที่รู้จักซึ่งถ่ายจากมุมเดียวกันกับแสงเดียวกัน การควบคุมแสงจะช่วยได้ไม่น้อย

ปัญหาที่ต้องพิจารณา ได้แก่ :

  1. แสงสว่าง (ยากกว่าที่คิดไว้มาก)
  2. คาดหวังพื้นผิว 3 มิติของแผงด้านนอกที่ประกอบ (เช่นจากข้อมูล CAD)
  3. เกณฑ์การจำแนกลักษณะของเดนท์: พื้นที่, ความลึก, โปรไฟล์, ฯลฯ
  4. เกณฑ์สำหรับการปฏิเสธเชิงบวกและการบวกเท็จ
  5. หมายถึงการบันทึกข้อมูลบุ๋มและ / หรือแผนที่บุบบนโมเดลของรถ (หรือรูปแบบผีเสื้อ)
  6. วิธีการและอุปกรณ์ในการวัดลักษณะบุ๋ม "จริง": ความลึกพื้นที่ ฯลฯ
  7. ฐานข้อมูลที่กว้างขวางของรอยบุบจากการสุ่มตัวอย่างยานพาหนะ
  8. การจัดการกับสีและการทาสีที่แตกต่างกัน

1. การให้แสงสว่าง เนื่องจาก Martin B ระบุไว้อย่างถูกต้องด้านบนการให้แสงสว่างที่ถูกต้องเป็นสิ่งสำคัญสำหรับปัญหานี้ แม้จะมีแสงที่มีโครงสร้างที่ดีคุณจะมีปัญหาในการตรวจจับรอยบุบเล็ก ๆ ใกล้กับเส้นคุณลักษณะช่องว่างระหว่างแผงควบคุมที่จับและอื่น ๆ

รายการ Wikipedia สำหรับแสงที่มีโครงสร้างค่อนข้างบาง แต่เป็นการเริ่มต้นเพื่อทำความเข้าใจหลักการ: http://en.wikipedia.org/wiki/Structured_light

แถบแสงสามารถใช้ในการตรวจจับใน dings (dents) และ out-dings (สิว) หากต้องการดูสิ่งต่างๆคุณจะต้องมีการเคลื่อนที่สัมพัทธ์ระหว่างแหล่งกำเนิดแสงและรถยนต์ กล้องแสง + เคลื่อนที่พร้อมกันเมื่อเทียบกับรถหรือรถเคลื่อนที่ผ่านกล้อง + แสง

แม้ว่าสิ่งที่อยู่ในและนอกจะมีลักษณะที่ปรากฏเมื่อมองที่ขอบของแถบแสงความสามารถในการตรวจจับของบุ๋มนั้นขึ้นอยู่กับขนาดและความลึกของรอยบุ๋มเมื่อเทียบกับความกว้างของแถบแสง ความโค้งของรถยนต์นั้นซับซ้อนดังนั้นจึงค่อนข้างยากที่จะนำเสนอแถบแสงที่สอดคล้องกับกล้อง ในขณะที่แถบแสงเคลื่อนที่ไปทั่วตัวรถความโค้งและความเข้มของแถบแสงจะแตกต่างกันไป

วิธีแก้ปัญหาบางส่วนหนึ่งคือเพื่อให้แน่ใจว่ากล้องและแถบแสงในมุมที่สอดคล้องกันเสมอเมื่อเทียบกับปกติ (ตั้งฉาก 3D) ของส่วนของพื้นผิวที่ถูกตรวจสอบ ในทางปฏิบัติหุ่นยนต์จะต้องเคลื่อนกล้องอย่างแม่นยำโดยสัมพันธ์กับพื้นผิวของร่างกาย การย้ายหุ่นยนต์อย่างถูกต้องนั้นต้องใช้ความรู้เกี่ยวกับท่าทาง (ตำแหน่งและมุม 3D) ของตัวถังรถซึ่งเป็นปัญหาที่น่ารังเกียจด้วยตัวมันเอง

สำหรับการตรวจสอบการใช้งานยานยนต์คุณจำเป็นต้องควบคุมแสงสว่างอย่างสมบูรณ์ นั่นหมายถึงไม่เพียง แต่วางหลอดไฟตามที่คุณต้องการในสถานที่ที่รู้จัก แต่ยังปิดกั้นแสงอื่น ๆ ทั้งหมด นี่จะหมายถึงตู้ที่ค่อนข้างใหญ่ เนื่องจากแผงของรถโค้งออกด้านนอก (เกือบเหมือนพื้นผิวทรงกลม) พวกมันจะสะท้อนแสงจากแหล่งกำเนิดรอบตัวพวกเขา เพื่อทำให้ปัญหานี้ง่ายขึ้นอย่างมากคุณสามารถใช้แถบแป้งที่มีความถี่สูงภายในตู้หุ้มด้วยผ้ากำมะหยี่สีดำ บ่อยครั้งที่มีความจำเป็นต้องไปสุดขั้วเช่นนั้นสำหรับการตรวจสอบการใช้งาน

2. พื้นผิว 3 มิติพื้นผิว ด้านนอกของรถยนต์ประกอบด้วยเส้นโค้งที่ซับซ้อน เพื่อที่จะทราบว่าจุดที่น่าสงสัยนั้นเป็นสิ่งที่ต้องทำหรือไม่คุณต้องเปรียบเทียบจุดนั้นกับคุณลักษณะที่เป็นที่รู้จักของรถ นั่นหมายความว่าคุณจะต้องจับคู่ภาพ 2D จากกล้องกับโมเดล 3 มิติที่มองในมุมที่แน่นอน นี่ไม่ใช่ปัญหาที่แก้ไขได้อย่างรวดเร็วและมันก็ยากพอที่จะทำให้ดีว่าบาง บริษัท มีความเชี่ยวชาญในเรื่องนี้

3. การวิเคราะห์ลักษณะข้อบกพร่อง สำหรับการวิจัยเชิงวิชาการหรือการทดสอบในห้องปฏิบัติการอาจจะเพียงพอที่จะพัฒนาอัลกอริทึมที่แสดงถึงสัญญาหรือปรับปรุงวิธีการที่มีอยู่ ในการแก้ปัญหานี้อย่างถูกต้องสำหรับการใช้งานเชิงพาณิชย์หรืออุตสาหกรรมคุณต้องมีสเปคที่มีรายละเอียดสูงสำหรับรอยบุบขนาดที่คุณต้องการตรวจจับ

เมื่อเราจัดการกับปัญหานี้ไม่มีมาตรฐานอุตสาหกรรมหรือมาตรฐานระดับชาติสำหรับรอยบุบ (การเปลี่ยนรูปแบบ 3 มิติ) นั่นคือไม่มีเทคนิคที่ตกลงร่วมกันเพื่อระบุลักษณะของบุ๋มตามพื้นที่ความลึกและรูปร่าง เราเพิ่งมีตัวอย่างที่ผู้เชี่ยวชาญในอุตสาหกรรมเห็นด้วยไม่ดีไม่แย่เกินไปและไม่สำคัญในแง่ของความรุนแรง การกำหนด "ความลึก" ของ ding นั้นมีความยุ่งยากเช่นกันเนื่องจาก ding เป็นการเยื้อง 3D ใน (โดยทั่วไป) พื้นผิว 3 มิติที่โค้งออกไปด้านนอก

สิ่งที่ใหญ่กว่านั้นง่ายต่อการตรวจจับ แต่ก็พบได้น้อยกว่าเช่นกัน ผู้ปฏิบัติงานรถยนต์ที่มีประสบการณ์สามารถสแกนตัวถังรถยนต์ได้อย่างรวดเร็ว - เร็วกว่าผู้สังเกตการณ์ที่ไม่ได้รับการฝึกฝนและหาขนาดนิ้วก้อยที่ตื้นของคุณอย่างรวดเร็ว ในการประเมินต้นทุนของระบบอัตโนมัติคุณอาจต้องจับคู่ความสามารถของผู้สังเกตการณ์ที่มีประสบการณ์

4. เกณฑ์สำหรับข้อผิดพลาดในการตรวจจับ ก่อนกำหนดคุณควรกำหนดเกณฑ์สำหรับการปฏิเสธเชิงลบที่ยอมรับได้และการบวกที่ผิด แม้ว่าคุณจะเพิ่งศึกษาปัญหานี้ในฐานะโครงการวิจัยและไม่ได้ตั้งใจจะพัฒนาผลิตภัณฑ์ให้ลองกำหนดเกณฑ์การตรวจจับของคุณ

false positive: พบเด็นต์ แต่ไม่พบการตรวจพบที่ผิดพลาดเป็นบวก: พื้นที่ที่ไม่มีการระบุสถานะระบุว่าเป็นเดนท์

โดยทั่วไปจะมีการแลกเปลี่ยน: เพิ่มความไวและคุณจะพบสิ่งที่มากขึ้น (ลดเชิงลบที่ผิดพลาด) แต่คุณยังจะได้พบกับสิ่งที่ไม่ได้อยู่ที่นั่น (เพิ่มผลบวกที่ผิด) มันค่อนข้างง่ายที่จะโน้มน้าวตัวเองว่าอัลกอริทึมทำงานได้ดีกว่าที่เป็นจริง: อคติตามธรรมชาติของเราคือการสังเกตข้อบกพร่องที่ตรวจพบโดยอัลกอริทึมและอธิบายสิ่งที่ไม่ได้ตรวจพบ ทำการทดสอบแบบตาบอดโดยอัตโนมัติ ถ้าเป็นไปได้ให้คนอื่นวัดสิ่งที่กำหนดและกำหนดความรุนแรงเพื่อที่คุณจะไม่ทราบว่าการวัดที่แท้จริงคืออะไร

5. บันทึกข้อมูลและ / หรือทำแผนที่มัน บุ๋มมีลักษณะตามความรุนแรงและตำแหน่งของมันบนตัวรถ หากต้องการทราบตำแหน่งของสถานที่นั้นคุณจะต้องแก้ปัญหาการติดต่อแบบ 2D ถึง 3D ที่กล่าวถึงข้างต้น

6. การกำหนดรูปแบบของรอยบุบ "จริง" ของรอยบุบ Dents นั้นยากที่จะวัด รอยบุ๋มที่คมชัดและรอยบุ๋มแบบโค้งของพื้นที่ผิวและความลึกเดียวกันจะแตกต่างกัน การวัดรอยบุบด้วยวิธีเชิงกลจะนำไปสู่การตัดสินส่วนตัวและมันก็ค่อนข้างน่าเบื่อที่จะใช้เกจวัดความลึกไม้บรรทัด ฯลฯ เมื่อคุณอาจต้องวัดหลายสิบถ้าไม่มาก

นี่เป็นหนึ่งในปัญหาทางวิศวกรรมที่ยากขึ้นในการแก้ไขสำหรับโครงการตรวจจับข้อบกพร่องสำหรับการผลิต: วิธีการหนึ่งที่จะวัดข้อบกพร่องและกำหนดลักษณะของมันได้อย่างไร หากมีมาตรฐานในการทำเช่นนั้นมาตรฐานมีความสัมพันธ์กับสิ่งที่ระบบการตรวจวัดใช้หรือไม่? หากระบบการตรวจสอบไม่พบสิ่งที่มัน "ควรจะ" พบว่าใครจะตำหนิ?

ที่กล่าวว่าหากระบบการตรวจสอบทำงานได้ดีพอสำหรับตัวอย่างของข้อบกพร่องที่ทราบแล้วผู้ใช้อาจเชื่อถือได้ในที่สุดและระบบจะกลายเป็นมาตรฐานในการกำหนดความรุนแรงของข้อบกพร่อง

7. ฐานข้อมูลที่กว้างขวางของรอยบุบ หากเป็นไปได้คุณจะมีภาพตัวอย่างรอยบุบจำนวนหลายพันภาพของความรุนแรงที่แตกต่างกันในสถานที่ต่าง ๆ บนยานพาหนะจากผู้ผลิตที่ยาก หากคุณต้องการค้นหารอยบุบที่เกิดจากอุบัติเหตุในระหว่างกระบวนการประกอบอาจใช้เวลานานในการรวบรวมข้อมูลประเภทนั้น รอยบุบที่เกิดขึ้นในระหว่างกระบวนการแอสเซมบลีไม่ธรรมดา

หากคุณสนใจที่จะค้นหารอยบุบที่เกิดจากอุบัติเหตุหรือความเสียหายต่อสิ่งแวดล้อมนั่นเป็นเรื่องที่ต่างออกไป ชนิดของรอยบุบจะแตกต่างจากที่เกิดจากการกระแทกโดยไม่ตั้งใจในโรงงานประกอบรถยนต์

8. การจัดการกับสีที่แตกต่างกัน มันเป็นความจริงที่เครื่องตรวจจับขอบสามารถมีความทนทานในการตรวจจับขอบในภาพที่มีระดับความเปรียบต่างแตกต่างกันไป . แถบแสงที่ดูดีบนรถสีดำมันวาวสามารถตรวจจับได้ยากบนรถสีขาวที่มีสีเก่า

กล้องส่วนใหญ่มีช่วงไดนามิกค่อนข้าง จำกัด ดังนั้นการได้รับความเปรียบต่างที่ดีสำหรับพื้นผิวมันวาวสีดำและพื้นผิวหมองคล้ำสีขาวนั้นค่อนข้างยุ่งยาก มีโอกาสมากที่คุณจะต้องควบคุมความเข้มของแสงโดยอัตโนมัติ นั่นก็ยากเช่นกัน


ไม่มีฐานข้อมูลของภาพที่ฉันสามารถขึ้นบุบได้หรือไม่ และคำตอบที่ยอดเยี่ยมฉันไม่เคยรู้เลยว่า ...
vini

2
ฉันไม่แน่ใจว่ามีฐานข้อมูลดังกล่าวเพราะข้อมูลส่วนใหญ่เป็นกรรมสิทธิ์ ผู้ผลิตรถยนต์ไม่จำเป็นต้องถ่ายทอดขนาดและประเภทของข้อบกพร่องที่พวกเขาเห็นในการผลิตให้โลกเห็น ที่กล่าวว่าไม่มีสถิติระบบการวัดที่แข็งแกร่งอาจจะขึ้นอยู่กับการตรวจสอบด้วยสายตามนุษย์ในโรงงานซึ่งอาจจะมาจากการสุ่มตัวอย่างหรือรายงานความเสียหายจากตัวแทนจำหน่ายรถยนต์ รถที่ถูกเว้าแหว่งก่อนที่จะถึงตัวแทนจำหน่ายสามารถขายออกซึ่งหมายความว่าเสียเงินและสูญเปล่าทรัพยากร
Rethunk

1
ร้านซ่อมของ Dent ใช้แถบแสงแม้ว่าการตั้งค่าของพวกเขาจะเหมาะกับการตรวจสอบของมนุษย์มากกว่าการตรวจสอบอัตโนมัติ: exceldent.wordpress.com/tag/door-ding-repair ncfixadent.com/services/paintless-dent-repair-pdr สำหรับระบบอัตโนมัติ คุณต้องการปิดกั้นแสงที่ไม่เกี่ยวข้องทั้งหมดรวมถึงการสะท้อนแสงจากตัวโคมไฟเอง นอกจากนี้ยังจำเป็นต้องตั้งค่าโฟกัสของกล้องเพื่อให้เกิดความสมดุลระหว่างการรักษาแหล่งกำเนิดแสงไว้ในโฟกัสเพื่อให้ขอบคมและทำให้พื้นผิวรถอยู่ในโฟกัสเพื่อดูคุณสมบัติของรถยนต์
Rethunk

เฮ้ rethunk ตอนนี้ฉันแค่กำหนดวิธีแก้ปัญหาให้เหมือนกันคือมีการเก็บภาพรอยบุบและรอยขีดข่วนรถยนต์ ฯลฯ ที่จะช่วยในการวิจัยของฉันโปรดช่วยด้วย!
vini

1
การรวบรวมภาพรอยบุบและรอยขีดข่วนอาจเป็นเรื่องยาก มีโอกาสที่จะทำงานที่ขา มีไม่กี่ภาพที่เหมาะสมออนไลน์ คุณสามารถโทรหาร้านซ่อมรถยนต์และถามว่าคุณสามารถถ่ายรูปยานพาหนะที่พวกเขามีหรือไม่ ในทางกลับกันคุณสามารถทำได้ที่ร้านในรายงานของคุณ ถามเพื่อนและเพื่อนร่วมงานว่าคุณสามารถถ่ายรูปรถยนต์ของพวกเขาได้หรือไม่ - นำหลอดฟลูออเรสเซนต์แบบพกพาติดตัวไปด้วยเพื่อให้แสงสว่าง โทรศัพท์ Acamera จะดี ที่ดีที่สุดคือการได้รับแผงเว้าแหว่งและ undented จากขยะ เป็นการดีที่สุดที่จะมีตัวอย่างของคุณเองตั้งแต่เริ่มต้นเพื่อให้คุณสามารถปรับแต่งความสว่าง ฯลฯ
Rethunk

9

ตัวกรอง Gabor เป็นเพียงขั้นตอนแรกของหลาย ๆ ขั้นตอนที่คุณจะใช้สำหรับงานตรวจจับข้อบกพร่อง นอกจากนี้โปรดทราบว่าคุณใช้การวางแนวและสเกลเฉพาะของตัวกรองกาบอร์เท่านั้นโดยทั่วไปแล้วคุณจะใช้การปรับทิศทางและสเกลทั้งหมด

โครงร่างคร่าวๆของวิธีการตรวจจับข้อบกพร่องอย่างง่าย ๆ โดยใช้ตัวกรอง Gabor อาจเป็นดังนี้:

  • ใช้ตัวกรอง Gabor ในทิศทางและตาชั่งที่แตกต่างกัน
  • ใช้ตัวจําแนก (ฝึกอบรมกับข้อมูลการฝึกอบรมที่เหมาะสม) เพื่อจำแนกแต่ละพิกเซลเป็น "ข้อบกพร่อง" หรือ "ไม่บกพร่อง"
  • รวมการตรวจจับจากพิกเซลข้างเคียงเพื่อให้แน่ใจว่ามีการตรวจพบข้อบกพร่องแต่ละครั้งเพียงครั้งเดียวและเพื่อกำจัดการตรวจจับปลอม

จุดหนึ่งที่ไม่ได้อยู่ในรายการนี้ แต่โดยทั่วไปสำคัญมากคือการได้มาซึ่งรูปภาพ วิธีที่คุณส่องแสงวัตถุและวางกล้องของคุณมีอิทธิพลอย่างมากต่อความง่ายในการตรวจจับข้อบกพร่องในภาพที่เกิดขึ้น ภาพตัวอย่างของคุณดูเหมือนจะใช้การให้แสงสว่างทางสิ่งแวดล้อมที่เกิดขึ้นในขณะนั้นซึ่งอาจไม่เหมาะสม

อย่างที่ฉันพูดนี่เป็นเพียงโครงร่างที่หยาบมาก การตรวจสอบอัตโนมัติเป็นฟิลด์ที่กว้างและต้องการความเชี่ยวชาญเป็นอย่างมาก


0

ไม่มันไม่สามารถทำได้ การประมวลผลภาพไม่ใช่เวทมนต์คุณต้องให้ข้อมูลเพิ่มเติม หากไม่มีแนวคิดว่ารถควรดูอย่างไรคอมพิวเตอร์ควรแยกแยะรอยบุ๋มออกจากการออกแบบตัวรถอย่างไร


1
ฉันรู้ว่ามันไม่ได้วิเศษและภาพที่ฉันได้รับจาก google .. นั่นคือเหตุผลที่ฉันต้องการป้อนข้อมูลบางอย่างว่าฉันจะเข้าหาปัญหานี้ได้อย่างไรเพียงใช้ตัวกรองนี้ไม่เพียงพอ ...
vini

ฉันต้องการที่จะลงคะแนนนี้ แต่มันไม่ใช่คำตอบที่แท้จริง มันควรจะเป็นความคิดเห็น
endolith
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.