Please create an account to participate in the Slashdot moderation system

 



Forgot your password?
typodupeerror
×
Software Science

Particle Swarm Optimization for Picture Analysis 90

Roland Piquepaille writes "Particle swarm optimization (PSO) is a computer algorithm based on a mathematical model of the social interactions of swarms which was first described in 1995. Now, researchers in the UK and Jordan have carried this swarm approach to photography to 'intelligently boost contrast and detail in an image without distorting the underlying features.' This looks like a clever concept even if I haven't seen any results. The researchers have developed an iterative process where a swarm of images are created by a computer. These images are 'graded relative to each other, the fittest end up at the front of the swarm until a single individual that is the most effectively enhanced.'"
This discussion has been archived. No new comments can be posted.

Particle Swarm Optimization for Picture Analysis

Comments Filter:
  • not a good idea (Score:2, Interesting)

    by ILuvRamen ( 1026668 ) on Monday February 04, 2008 @03:35AM (#22288560)
    I've seen what Photoshop CS3's auto levels function does to some photos. It gets it right most of the time and when there needs to be little adjustment, it makes a little one and for really bad ones, it makes big adjustments. You could say it's judging the quality of the input image. Well it's right about 75% of the time. When it usually gets confused is when a picture is supposed to look significantly reg, green, or blue and it has no way of knowing that so it screws it up horribly while trying to tone it down. So I'm figuring any automated system won't possibly be remotely as smart as a human when it comes to sorting the "best" photos out front. It will probably just have a huge bias towards certain types of images.
  • No good heuristic (Score:2, Interesting)

    by randomc0de ( 928231 ) on Monday February 04, 2008 @03:36AM (#22288564)
    This procedure sounds like it has the same problem as plain-old AI search - the lack of an obvious heuristic. The article says they use the number of pixels on an edge, but there's no obvious way of finding this - they've moved the computation up one step. The article is light on details so I'm sceptical. If they have a simple procedure for the fitness function, this is a great application.
  • Re:Just wondering (Score:3, Interesting)

    by Radish03 ( 248960 ) on Monday February 04, 2008 @03:39AM (#22288580)
    It can tell good picture from bad, but it's completely relative. Sure, it can come up with a picture that's better than the original. But that's by no means the best it can do. This process continually attempts to create pictures that are better than the previous picture, apparently repeating this process until an image is found where any adjustments to it result in images that are worse in quality. Then that one is selected as the best version.
  • by Anonymous Coward on Monday February 04, 2008 @04:16AM (#22288728)
    Yeah, and as such, you should know that this is just a manifestation of the No Free Lunch Theorem. Basically, they're trying to perfect one case at the expense of the others, resulting in possibly hundreds of poor matches to get one really good match. While this isn't the typical route that I'd try to take, it does have its own interesting applications.
  • by Anonymous Coward on Monday February 04, 2008 @05:08AM (#22288882)
    True, but only for problems where "efficient direct optimization methods" are known. If you have a high dimensional search space and a multimodal objective function or say a multi-objective optimization problem - what then?
  • Bullshit FTA (Score:4, Interesting)

    by EdIII ( 1114411 ) on Monday February 04, 2008 @05:40AM (#22288980)
    While reading the article I came across:

    However, none comes up to the standards of the kind of image enhancement often seen in fiction, where a blurry distorted image on a screen is rendered pin-sharp at the click of a mouse. PSO, however, takes image enhancement a step closer to this ideal.
    Unless I am REALLY missing something, it is next to impossible to go from a blurry distorted image to pin-sharp. Really close to impossible. It is a matter of data. If you start from blurry, you cannot actually obtain the information required to unblur it. It does not exist. Therefore, any results are fundamentally speculative. Contrast Levels are not exactly the same thing, since you are only shifting data already there. Edge enhancement, sharpness, is not actually representative of what the objects actually looked like. There is a big difference between taking a blurry box and enhancing the edges and taking somebodies face and effectively "refocusing" the image so you can see facial features more clearly. You could say this is a step closer and certainly novel approach to the problem. To actually get to science fiction levels of performance may be not actually be possible though.

    Such enhancement might be useful in improving snapshots of CCTV quality for identification of individuals or vehicle number plates
    Not really useful at all. At least from an evidence point of view. Since you cannot really be sure if that is the individual in the picture, the best you can approximate is closer to one of those sketches they provide. I'm not being racist, but certain races do look similar. If you took 100 Chinese people for example, and started progressively blurring their pictures, you would start to get pictures that you could not make a distinction between them, much less a definitive identification. So there had better be some corroborating evidence, since it won't take too much of an expert witness to shoot that down. So it would be better to say it could help identify possible suspects, not individuals. Burden of proof, reasonable doubt, and so on.

    Another thought, even more concerning, is that if you took those 100 pictures and showed them to a test group that saw before and after shots for each individual, how effectively could they make identifications? What about a test group showed only the after shots? My point being, is that if you are predisposed towards identifying a certain individual you are more likely to do so. In fact, people remember faces in a similar way be exaggerating facial features. I believe it is referred to as face perception. So it might be possible for the human brain to identify, incorrectly, an individual from one of those blurred images. All in all, not solid enough for legal purposes, which CCTV identifications of individuals and license plates are certainly used for.

    I could be wrong, but until I see actual pictures, I will have to play the part of the skeptic.

    Great idea, and certainly thinking outside of the box, so they deserve respect for their work.
  • Re:Wow (Score:4, Interesting)

    by MobileTatsu-NJG ( 946591 ) on Monday February 04, 2008 @12:51PM (#22293160)

    A pictures worth a thousand words.

    Strikes me that what they are implying is that take a CCTV (MJPEG/MPEG) and correlating the differing images (frames/fields really). I dont think that manipulation of one CCTV image over and over will ever produce results like that seen on CSI!
    Well, c'mon, CSI's trying to entertain an audience here. That said, video does offer some potential for enhancement. I've seen technology that can take a sequence of images, extract the motion out of them, and use that to work out a higher resolution image by watching how the pixels shift in color. There are cases where a car could drive into frame but the resolution is too low to make out the license plate. But if the motion of that car is extracted, and assuming that motion is actually of a useful vector, they can watch how the pixels shimmer and figure out what the color of the pixels in between them was supposed to be. When the image is reconstructed, the license plate could be read.

    It's not as magical or practical like they show on CSI, but there are cases where it can be done. Heck, Hollywood uses technology like that to slow down video like the bullet time effect in the Matrix. There's a lot you can do with motion vectors.

There are two ways to write error-free programs; only the third one works.

Working...