Обработка гартманнограмм
Jun. 25th, 2015 12:20 pmПохоже, наконец-то я добил то, что уже тянется в течение более чем трех лет: научился-таки обрабатывать гартманнограммы.
Тщательно проштудировав отчеты Снежко, я понял, что действительно простейшим способом вычисления нормалей к аберрациям зеркала является построение точечной диаграммы для z наилучшего фокуса и вычисление отклонений каждого луча по ней.
Здесь лежит код. Пока что обработка идет разрозненно: сначала при помощи моей фитсосмотрелки производится предварительная обработка гартманнограмм (поиск пятен, идентификация и вычисление координат центров), а затем уже этой утилиткой найденные пятна обрабатываются.
Для начала я протестировал на модели, насколько качественно все работает. Скажем, берем вот такую матрицу
строим по ней гартманнограммы и обрабатываем. В итоге вот что получилось:
( Дальше )
Тщательно проштудировав отчеты Снежко, я понял, что действительно простейшим способом вычисления нормалей к аберрациям зеркала является построение точечной диаграммы для z наилучшего фокуса и вычисление отклонений каждого луча по ней.
Здесь лежит код. Пока что обработка идет разрозненно: сначала при помощи моей фитсосмотрелки производится предварительная обработка гартманнограмм (поиск пятен, идентификация и вычисление координат центров), а затем уже этой утилиткой найденные пятна обрабатываются.
Для начала я протестировал на модели, насколько качественно все работает. Скажем, берем вот такую матрицу
0 0 0 .1 .1 .1 0 0 0 0 0 0 .1 .3 1 .4 .2 0 0 0 0 0 0 .1 .5 .2 .1 0 0 0 0 0 0 0 .1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .1 .1 0 0 0 0 0 0 0 .1 .2 .2 .1 0 0 0 0 0 0 .3 .4 .3 .1 0 0 0 0 0 0 .5 .2 .1 0 0 0 0 0 0 0
строим по ней гартманнограммы и обрабатываем. В итоге вот что получилось:
( Дальше )

