am working on automated system for defect detection in ceramic tiles and their classification. I am using matlab. Help is needed, how should I start? I need to detect blobs,pinholes,cracks,pattern etc.
I am a second year EE student, so this should be kept in mind while explaining.
Matlab image proccessing
-
- Posts: 12159
- Joined: 2010-01-23T23:01:33-07:00
- Authentication code: 1151
- Location: England, UK
Re: Matlab image proccessing
That's a very wide question. I would tackle it like this.
1. Define the terms. For example: what visually defines a pinhole? What distinguishes a pinhole from any other defect or feature? Ideally, each definition will capture all occurrences of the defect, without incorrectly declaring a defect where this isn't one. In other words, no false negatives or false positives.
2. Decide on the outputs. Perhaps this is a mask for every tile, white where there is a defect, and otherwise black. Or perhaps types of defects should be shown in different colours. Or perhaps the output is a simple accept/reject for each tile, according to some criteria.
3. Implement steps (1) and (2). When you do this, and test on a range of inputs, you'll probably discover you need to refine your definitions.
An initial definition of a pinhole might be: "a small roughly circular patch where the lightness is significantly darker than surrounding pixels," with suitable definitions of "small" and "significantly".
That definition could be implemented as a blur and threshold, followed by a search for black pixels surrounded by 8 white neighbours. ImageMagick operations for this might be "-blur", "-threshold" and "-morphology HMT".
I can't help with Matlab. I expect there are Matlab forums somewhere.
1. Define the terms. For example: what visually defines a pinhole? What distinguishes a pinhole from any other defect or feature? Ideally, each definition will capture all occurrences of the defect, without incorrectly declaring a defect where this isn't one. In other words, no false negatives or false positives.
2. Decide on the outputs. Perhaps this is a mask for every tile, white where there is a defect, and otherwise black. Or perhaps types of defects should be shown in different colours. Or perhaps the output is a simple accept/reject for each tile, according to some criteria.
3. Implement steps (1) and (2). When you do this, and test on a range of inputs, you'll probably discover you need to refine your definitions.
An initial definition of a pinhole might be: "a small roughly circular patch where the lightness is significantly darker than surrounding pixels," with suitable definitions of "small" and "significantly".
That definition could be implemented as a blur and threshold, followed by a search for black pixels surrounded by 8 white neighbours. ImageMagick operations for this might be "-blur", "-threshold" and "-morphology HMT".
I can't help with Matlab. I expect there are Matlab forums somewhere.
snibgo's IM pages: im.snibgo.com