Gilfoyle
Gilfoyle

Reputation: 3616

Recognizing patterns in a data set

I have a huge data set of images which I want to sort. Many images are just random noise which I don't need, but some of them contain patterns which I would like to process further.

Here is an example: enter image description here

Here, the patterns are looking like lines. Which possibilities do I have to keep only the pictures which contain a kind of pattern?

Upvotes: 0

Views: 220

Answers (1)

gustavovelascoh
gustavovelascoh

Reputation: 1228

You have a classification problem (structures vs noise). As some people said in the comments, this is a very vague and broad question, like a starting question in an image processing or pattern recognition course. However, I will try to explain how this could work, assuming you have no background on the topics.

First, you need to get some features or parameters from the images, then identify how the values of the features are related with noisy images and structured images.

In practical terms, you need to read the images files and convert them into values, in order to process them and try a classification method.

This is an example that could or could not work:

As shown by the images you provided, your images are black and white, and suppose that after import them, they have values from 0 (black) to 255 (white). Assuming they are 40 x 40 pixels, a simple feature I could think is the average of the pixel values.

I see the patterns are white lines, so I would say that the average of these images would be higher than the average of noisy images, which don't have white pixels. Then, you could find that average for noisy images could be for example [110, 100, 112, 98] and the average for images with patterns could be [130, 135, 125, 131]. If this is the case, you can use a threshold as a classification method. For example, if the average is greater than 125, the image is considered to contain a pattern, otherwise, it is noise.

If using the average is not enough to separate the classes, you should use more elaborated features, in this case you need to use some image processing, machine learning or any other approach that could fit your requirements

Upvotes: 1

Related Questions