K
K
Konstantin Stepanov2016-08-20 05:56:02
Microelectronics
Konstantin Stepanov, 2016-08-20 05:56:02

What is the correct name of the algorithm for finding the position and direction of a light source using 4-point illumination measurement?

There is a task:
A light source with a lens (a flashlight, for example, or a laser pointer) illuminates a certain surface. The light source gives a "spot" of light with fairly uniform attenuation in all directions from the center (lens distortion is not taken into account yet). At 4 points (usually at the corners of the square), there are light sensors. Depending on the levels of illumination at these points, the following data is calculated:
1) The point of greatest illumination, roughly speaking, the center where the center of the beam of the flashlight / pointer points.
2) The direction of the light source, roughly speaking, the angle between the vector of the light source and its projection onto the surface where the light sensors are located.
The only reasonable material that I found is this one: https://geektimes.ru/post/256820/
Please tell me how the problem is academically called and where to get theoretical algorithms to use them in the code.
Thank you.

Answer the question

In order to leave comments, you need to log in

1 answer(s)
K
Konstantin Stepanov, 2017-01-11
@koronabora

The photodiode was cut off from the visible spectrum by a filter made from exposed developed film. The IR photodiode in the pointer emitted at a frequency of 100 hertz, the "target" on the arduino uno took the ADC values ​​and filtered them a little bit. Then I transmitted the line id abc d over the com port.

|------|
|A    B|
|D    C|
|------|
   ||	

qreal sum = (a + b + c + d)*1.0;
x = ((c*1.0 + b*1.0) - (a*1.0 + d*1.0)) / sum;
y = ((c*1.0 + d*1.0) - (a*1.0 + b*1.0)) / sum;

The resulting coordinates were filtered by sma with a width of 25.
The accuracy is about 1 mm at 5 meters. The lag due to SMA is about 50ms.

Similar questions

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question