Live data from Hacker News

Photoshop 'unblur' leaves MAX audience gasping for air

9to5mac.com

121–130 of 130 posts

Re: Photoshop 'unblur' leaves MAX audience gasping for air

#121
post #119
post #107

Earlier quoted context omitted.

Deconvolution is easy. The main difficulty is estimating the blur kernel in a so-called "blind" manner. That's the advance being shown off by Adobe.

Right. It wasn't clear to me in the video that Adobe is using "blind" deconvolution. I did catch a glimpse of a small black square within a pure white field (on the right side palette in the video). I'm assuming that it is a spatial domain motion blur filter - variable by which the interface tweaks the effect.

I thought that was an output field, showing what motion it had estimated. Guess we'll have to wait until it's released to find out :-)

Re: Photoshop 'unblur' leaves MAX audience gasping for air

#123
post #116

If you are wondering how they might be doing it, here is one approach that I saw in a computer vision class (no idea if they are doing anything similar to this) (slides: http://cs.nyu.edu/~fergus/presentations/fergus_deblurring.pd... (~60 MB ppt) paper: http://cs.nyu.edu/~fergus/papers/deblur_fergus.pdf (~10 MB pdf) ) The basic idea is that you have an unknown original image and it is convolved with an unknown blurri…

---------------------------------------------------- Here are the actual research papers for this video: http://people.csail.mit.edu/sparis/#publi2011 - Blur kernel estimation using the Radon Transform http://people.csail.mit.edu/sparis/publi/2011/cvpr_radon/Cho... - Modeling and Removing Spatially-Varying Optical Blur http://people.csail.mit.edu/sparis/publi/2011/iccp_blur/Kee_... -----------------------------------…

Fascinating stuff --- thanks for digging that up. The main question in methods like this is how to constrain the blur kernel and the original image. I've only skimmed the first one, but the key idea used there seems to be to constrain things by looking at the edges in the image. The image has its own, natural distribution of edges, but there are also artificial edges created by the blurring that can serve as a clues for the motion of the camera (imagine if everything is blurred diagonally --- there will probably be a lot of artificial diagonal edges)

Re: Photoshop 'unblur' leaves MAX audience gasping for air

#124

If you are wondering how they might be doing it, here is one approach that I saw in a computer vision class (no idea if they are doing anything similar to this) (slides: http://cs.nyu.edu/~fergus/presentations/fergus_deblurring.pd... (~60 MB ppt) paper: http://cs.nyu.edu/~fergus/papers/deblur_fergus.pdf (~10 MB pdf) ) The basic idea is that you have an unknown original image and it is convolved with an unknown blurri…

I recently discovered two neat papers on deconvolution from a Bayesian perspective, written by Kevin Knuth.

http://knuthlab.rit.albany.edu/papers/knuth-ica99.pdf

Abstract: The problem of source separation is by its very nature an inductive inference problem. There is not enough information to deduce the solution, so one must use any available information to infer the most probable solution. We demonstrate that source separation problems are well-suited for the Bayesian approach which provides a natural and logically consistent method by which one can incorporate prior knowledge to estimate the most probable solution given that knowledge. We derive the Bell-Sejnowski ICA algorithm from first principles, i.e. Bayes' Theorem and demonstrate how the Bayesian methodology makes explicit the underlying assumptions. We then further demonstrate the power of the Bayesian approach by deriving two separation algorithms that incorporate additional prior information. One algorithm separates signals that are known a priori to be decorrelated and the other utilizes information about the signal propagation through the medium from the sources to the detectors.

http://knuthlab.rit.albany.edu/papers/knuth-eusipco05-final....

Abstract: Source separation problems are ubiquitous in the physical sciences; any situation where signals are superimposed calls for source separation to estimate the original signals. In this tutorial I will discuss the Bayesian approach to the source separation problem. This approach has a specific advantage in that it requires the designer to explicitly describe the signal model in addition to any other information or assumptions that go into the problem description. This leads naturally to the idea of informed source separation, where the algorithm design incorporates relevant information about the specific problem. This approach promises to enable researchers to design their own high-quality algorithms that are specifically tailored to the problem at hand.

Re: Photoshop 'unblur' leaves MAX audience gasping for air

#125
post #98
post #24

It's called blind deconvolution. Blind means that they have to first estimate the original convolution/blur kernel and in the second phase, apply the deconvolution. If there's acceleration sensor on the camera, you can use data from that for the blur kernel. It's nothing new really, but algorithms for it have advanced tremendously. For example, there's some results from 2009 http://www.youtube.com/watch?v=uqMW3OleLM4…

Indeed, I gave it a go with a blind deconvolution product for the consumer market. In the end, I decided to kill it. Here's my blog post describing why I pulled the plug: http://www.keacher.com/?p=872

FWIW - Trying to turn what is naturally expected to be an item in a graphic editor's menu into a paid service was a ballsy, but otherwise a futile idea. The problem is there, but your solution was way too complicated from the ux perspective.

Re: Photoshop 'unblur' leaves MAX audience gasping for air

#126

If you are wondering how they might be doing it, here is one approach that I saw in a computer vision class (no idea if they are doing anything similar to this) (slides: http://cs.nyu.edu/~fergus/presentations/fergus_deblurring.pd... (~60 MB ppt) paper: http://cs.nyu.edu/~fergus/papers/deblur_fergus.pdf (~10 MB pdf) ) The basic idea is that you have an unknown original image and it is convolved with an unknown blurri…

I assume the RedLaser barcode app uses something similar from captured video frames combined with data from the accelerometer, no?

Barcodes are designed to be easy to decode. Even blurred, the 1 or 2 dimensional frequency information is pretty well preserved. If I needed to combine data from several blurred images of a barcode I'd extract the likely values of the barcode from each image separately and then combine those.

Re: Photoshop 'unblur' leaves MAX audience gasping for air

#127
post #87

Earlier quoted context omitted.

It was rude to be rude to the people paying him to be rude because it appears to the other members of the audience who were not being paid to be rude that being rude and interrupting the talk is acceptable practice.

How about you all lighten up, yeah?

Whoosh

Re: Photoshop 'unblur' leaves MAX audience gasping for air

#129

Earlier quoted context omitted.

I assume the RedLaser barcode app uses something similar from captured video frames combined with data from the accelerometer, no?

Barcodes are designed to be easy to decode. Even blurred, the 1 or 2 dimensional frequency information is pretty well preserved. If I needed to combine data from several blurred images of a barcode I'd extract the likely values of the barcode from each image separately and then combine those.

Does it make a difference on the technique used if the image is out-of-focus versus blurred by camera motion?

Re: Photoshop 'unblur' leaves MAX audience gasping for air

#130

Earlier quoted context omitted.

Barcodes are designed to be easy to decode. Even blurred, the 1 or 2 dimensional frequency information is pretty well preserved. If I needed to combine data from several blurred images of a barcode I'd extract the likely values of the barcode from each image separately and then combine those.

Does it make a difference on the technique used if the image is out-of-focus versus blurred by camera motion?

So long as the motion blur is a small enough angle/translation, the difference is only in the shape of the blurring kernel. The kernel will be circular or gaussian for out of focus, while a line or arc for motion.

In one dimension, you'll be looking at a slice (more accurately, a summed projection) of the kernel. Focus = guassian, motion = square wavelet (line) or irregular (arc)

Post reply on HN