On Jul 24, 12:55=A0pm, aruzinsky <aruzin...@[EMAIL PROTECTED]
> wrote:
> On Jul 23, 2:48=A0pm, slus...@[EMAIL PROTECTED]
wrote:
>
>
>
>
>
> > On Jul 22, 11:59=A0am, aruzinsky <aruzin...@[EMAIL PROTECTED]
>
wrote=
:
>
> > > On Jul 22, 8:04=A0am, slus...@[EMAIL PROTECTED]
wrote:
>
> > > > Thank you for your interest and offer to review some sample
images.
> > > > Unfortunately, our concern is not on the software or algorithmic
si=
de,
> > > > but on the optical side. =A0As I mentioned in my original post:
>
> > > > "Does anyone have references they can point to (or their own
> > > > pesuasive
> > > > arguments) that describe where the true edge location should be
> > > > relative to the edge image function?"
>
> > > I already did. =A0What is wrong with you?
>
> > > > I also mentioned that I originally posted to sci.optics, then
added
> > > > sci.image.processing because I thought the folks here might be
more
> > > > aware of relavent references. =A0The (apparently) commonly held
bel=
ief
> > > > that the maximum slope of the edge image, or the midpoint between
t=
he
> > > > maximum and minimum grey level values of the edge image
corresponds=
to
> > > > the true edge location seems unmotivated or unsup****ted to me,
even
> > > > though it "feels" like common sense. =A0
>
> > > That is an algorithm, albeit a really stupid one that is not common
> > > sense, so don't tell me that you are not interest in algorithms.
> > > Furthermore, that is not a commonly held belief, e.g., it is common
> > > knowledge that shock filters sharpen an edge around the inflection
> > > point (the inflection point is preserved) and nobody, I know of,
> > > pretends that shock filtering is deconvolution.
>
> > > > We have also performed bench
> > > > experiments that suggest that neither the max. slope nor the grey
> > > > level midpoint corresponds to the true edge, with errors being in
t=
he
> > > > range of 0.2 to 0.45 pixels in the experimental set up we used.
>
> > > I hope my tax money didn't fund that busy work.
>
> > > >=A0We
> > > > are continuing our own investigation, but I have to believe that
> > > > someone has already done this at some time and published their
> > > > results. =A0I'd love to find out that our own efforts at inventing
=
the
> > > > wheel are unecessary. :-)
>
> > > I already gave you a reference to a relatively simple algorithm that
> > > might do better than 0.2 pixels. =A0 It would be foolish not to try
i=
t.
>
> > Hmm. I appear to have offended you. =A0If it was because I had not yet
> > acknowledged your reply to my query, I apologize. =A0I was, in fact,
> > digesting your comments as well as the two references you provided. I
> > was also reading what I found upon looking up "edge interpolation" as
> > you suggested. =A0In the meantime, Andrew offered a suggestion that I
> > was more easily and quickly able to address, which included my
> > referring back to, and quoting my original post. You may have
> > interpreted that as my ignoring your suggestions.
>
> > Regarding your references, I believe I can see the point(s) you are
> > making, but I also don't see the relavence to the *physics* of
> > correlating the image of an edge to the location of the real edge. We
> > might be talking past each other here, much as the Americans and Brits
> > are separated by a common language. :-)
>
> > Let's ignore pixels for a moment, and pretend we can sample the image
> > of a back lit knife edge with infinite resolution, casting God's eye
> > upon the screen on which the light eventualy falls. Are you familiar
> > with Fresnel diffraction at an edge? When one looks at a plot of
> > intensity of the light around the "shadow" zone, one sees there is
> > light in the region that would otherwise be forbidden if there was no
> > diffraction. =A0One also sees that "past" the edge, the light
intensity
> > climbs, reaches a peak, then oscillates in a decaying fa****on,
> > eventually reaching a uniform intensity.
>
> > If you look closely at this plot, we see that the point on the light
> > intensity curve that in fact corresponds to the true location of the
> > knife edge is of an increasing slope, but is neither the maximum slope
> > (gradient), nor an inflection point, nor, generally speaking, is it
> > midway between the minimum light level and the average high light
> > level, much less the peak. =A0Thus, edge finding techniques that
depend
> > in some fa****on on maximum slope or gradient (Sobel, Canny ,etc.) or
> > 50% threshold level, would not find the point on this edge image that
> > corresponds to the position of the true physical edge. Of course this
> > is just a start. =A0The edge image is further complicated by the many
> > other phenomena that occur when using lenses to place the image onto a
> > pixel detector.
>
> > My own readings found, in many cases, discussion of edge detection
> > schemes that do in fact start with the presumption that the maximum
> > slope or gradient of an edge image should in some way correspond to
> > the true location of the edge, but with no explanation of why the
> > author believes this to be so. =A0My guess is that this is something
> > that is simply "understood" by those working in the field, and is
> > passed along from one person to another without question. =A0It's
> > obvious that you hold no such belief, but at the level of my
> > investigation it *is* common.
>
> > As for time spent investigating this, rest assured that this is
> > strictly a capitalistic venture using private money, snide comments
> > not withstanding.
>
> > It may be of no interest to you, but others might find something
> > interesting. =A0I'm cutting and pasting here a brief description of
our
> > experiments that I also orignally posted on sci.optics:
>
> > Using a
> > chrome-on-glass bar target that is measured as 12.503mm long
> > +/-0.003mm, we grabbed images with a telecentric lens and red LED
> > collimated back light. =A0We then used a micrometer stage to move the
> > target 12.503mm (again, with an error of +/-0.003mm) -- so that the
> > trailing edge at the new postion corresponds to the leading edge of
> > the original position. =A0The direction of motion was perpendicular to
> > the lens optical axis to within 0.25 degrees. =A0We then used various
> > edge detection methods, including the 2nd derivative of the edge with
> > a fit to a parabola, as well as the simple 50% local thresholding,
> > among others. =A0What we found consistently through different
positions
> > in the field of view and different new set-ups is that the trailing
> > edge appeared to fail to move far enough to coincide with the old
> > leading edge. =A0The error range was ~0.2 to 0.45 pixels, or about
> > 0.015mm to 0.034mm in real world units -- always considerably larger
> > than target and motion error, and alway in the same direction of
> > error.
>
> > Another way to interpret this result is that an object consistently
> > looks larger than it actually is. (If the bar target appears to be
> > 12.523mm, and you move it 12.503mm, the trailing edge will fail to
> > "catch" the initial position of the leading edge.)
>
> > We've tried this with different lens f-numbers from F/45 to F/8 and
> > did not see an obvious trend that followed the aperture, but on this
> > front we've only made a small number of tests -- 4 at each f-number.
> > The errors average ~0.3pixels, with the standard deviation ~0.05.
>
> > I will also add that we have used two different cameras (AVT Stingray
> > 145b and Sony XC-ST70) out of suspicion that a non-linear responsivity
> > could be the culprit. =A0While differing slightly in detail, we saw
> > essentially the same result.
>
> > Spencer- Hide quoted text -
>
> > - Show quoted text -
Thank you very much for taking the additional time!
Alright, let me make sure of my toddler steps here:
>
> Consider a simple 1D example:
>
> "Knife edge" is a discrete step function x.
>
> x =3D [ 0 0 0 1 1 1 1 1]T
>
> A =3D
> [
> 1/2 1/2 =A00 =A0 =A00 =A0 0 =A0 =A00 =A0 0 =A0 0
> 0 =A0 =A0 0 =A01/2 1/2 =A00 =A0 =A00 =A0 0 =A0 0
> 0 =A0 =A0 0 =A0 0 =A0 =A00 =A01/2 1/2 =A00 =A0 0
> 0 =A0 =A0 0 =A0 0 =A0 =A00 =A0 =A00 =A0 0 =A01/2 1/2
> ]
So generally speaking, A represents the PSF of the lens, Fresnel
diffraction at the edge, lens aberrations, etc. Essentially the whole
world of what goes into making the image of the edge no longer a step
function, right?
>
> A represents convolution with [1/2 1/2] followed by a factor of two
> decimation. =A0You can see A is undetermined and not invertible.
Decimation? I can see I'll need to pull out my old linear algebra
text. Or is this something more specific to image processing?
>
> Your observed values would be
>
> y =3D Ax =3D [ 0 1/2 1 1 ]
>
> In estimating x from y, given A, you have to do something that vaguely
> resembles an inversion of A to estimate x' of x.
>
> For example, you can softly constrain the discrete derivatives of x'
> to zero.
>
> y' =3D [ yT 0T ]T
>
> A' =3D [AT =A0 w*BT]T
>
> w is scalar weight
>
> B =3D
> [
> 1 -1 0 =A0... 0 0
> 0 =A01 -1 ... 0 0
> ...
> 0 0 0 ... =A01 -1
> ]
>
> Now, A' is overdetermined
>
> solve
>
> min || y' - A' x' ||
> =A0x'
>
> ||.|| is a norm or possibly a function similar to a norm but not
> necessarily convex. =A0L2 norm is not recommended because it will cause
> oscillations. =A0L1 norm recommended. =A0All of this has a statistical
> interpretation which I won't get into for simplicity.
>
> Your A will have to incor****ate a different PSF for diffraction
> thingy.- Hide quoted text -
>
> - Show quoted text -
Yep, I definitely need to brush up on my linear algebra. But let me
see if I've at least got the gist of this.
A cannot be known completely, nor possibly very well, at least not at
first. It also cannot be inverted. Therefore, in estimating x from
y, one needs to adjust parameters (in the more colloquial sense)
during a process that is vaguely like inversion of A, and use this to
find a function that operates on x to produce the known image result.
This is likely an iterative process, comparing the results and then
going back and tweaking until satisfied. Is this roughly the idea?
If so, then is it true that the final form of A might not, in fact,
accurately reflect what is "really" going on with the physics of the
image, but it serves as a good working model? I realize much of
science is this way so I'm not denigrating the approach, just trying
to make sure I understand.
Spencer


|