Changes between Initial Version and Version 1 of AutoFocus


Ignore:
Timestamp:
Nov 8, 2013, 10:17:54 AM (6 years ago)
Author:
hazen
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • AutoFocus

    v1 v1  
     1The Frangioni lab has made this request:
     2
     3<pre>
     4We have a GigE color camera that we need to use for control and
     5auto-focusing of a zoom lens.
     6
     7I''d like the BU EDF to design a circuit that contains:
     8
     91) GigE interface that accepts "broadcast" from the GigE camera. The camera
     10output itself is being controlled by an image acquisition computer. We want
     11your circuit to simply "eavesdrop" on the image.
     12
     132) FPGA to convert 32 bit color to 16-bit grayscale. Then, apply a Sobel or
     14Prewitt Edge Filter to the image.
     15
     163) Output a single analog voltage proportional to the edge filter result. We
     17will tie this analog signal into a focus motor control and use it to adjust
     18focus motor until contrast is maximized (i.e, image is in-focus).
     19
     204) Zoom and focus motor controllers. The motors are DC servos with encoders
     21and limit switches. For the zoom motor, we need the controllers to keep
     22track of the lens position. For the focus motor, we need the circuit to tie
     23in the FPGA contrast output and adjust focus motor until image is in focus.
     24</pre>
     25
     26Frist is the issue of "eavesdropping" on GigE.  This is certainly not in compliance
     27with the standard.  It would require at a minimum two GigE ports, and some hardware
     28and firmware to transparently pass packets in both directions.  Or alternatively
     29a computer with to GigE NICs and some software to do likewise.
     30
     31Newer cameras use the new closed "GigE Vision" standard.  Since the standard
     32is closed, one cannot obtain the required documentation to access the camera data.
     33
     34Assuming an image is captured, the required conversion to grayscale and
     35signal processing seems relatively straightforward.  It could be done
     36either in a general-purpose processor (i.e. PC) or an FPGA.
     37
     38Finally, the motor controllers should be off-the-shelf items.
     39
     40Some notes about passive auto-focus algorithms.
     41
     42* http://www.cse.unr.edu/~bebis/CS791E/
     43* http://en.wikipedia.org/wiki/Prewitt
     44* http://ic.ncue.edu.tw/Seminar_new/9702/980309_01/980309_01.pdf
     45