конечная цель - создать прибор для построения плана помещения. я как-то видел УЗ дальномер - какая-то фигня: если измеряешь расстояние перпендикулярно объекту, то всё пучком, но если направить его под углом < 70 градусов - дальномер начинает выдавать всякий бред. из этого можно заключить, что основывать принцип работы дальномера на законах отражения волн от препятствий не очень эффективно. идея такая: есть лазер, видеокамера. на видеокамеру ставим светофильтр с длиной волны лазера. подсвечиваем лазером объект - на камере получается тёмный фон с одним светлым пятном. по положению пятна на картинке можно определить расстояние до объекта. меня интересует эффективность данного метода. 1. при дневном освещении пятно от лазера будет плохо различимо. 2. понятно, что нужен лазер с тонким лучом иначе пятно будет занимать несколько пикселей. если поверхность объекта неровная - довольно сложно будет определить его центр, а значит и расстояние будет определяться с большой погрешностью. с другой стороны, если луч слишком тонкий - пятно будет плохо различимо. 3. по идее, нужна камера с высоким разрешением, но в то-же время, время обработки изображения контроллером должно быть разумным. ещё существует проблема с фокусировкой пятна.
Суперкруто ) - а поподробнее как енто оно так? Обычно меряется время хода луча туда-обратно, а в расстояние пересчитывается через скорость света.
Да и зачем камера? Достаточно одного датчика. Вообще в интернете есть статья как кто-то из лазерной указки дальномер делал.
cupuyc Ну так ультразвуковой излучатель - это не лазер с расхождением в доли угловой минуты, а принцип Гюйгенса-Френеля ещё никто не отменял.
очень интересно как вы будете измерять времена порядка 10Е-9 сек? сколько я не размышлял над эим - пришла только одна идея - генерировать шим, отправлять на излучатель, затем перемножать 2 сигнала - с излучателя и приёмника. чем сильнее сдвиг фаз - тем ширина импульса, а значит и среднее напряжение. но, найти свето- фото- диода со временем нарастания и спада импульса <~ 15нс довольно проблематично. что каскается лазерного излучения - так оно дифрагирует значительно меньше УЗ, т.е. если ловить отражённый сигнал, то только от перпендикулярных поверхностей. объясняю суть моей идеи на картинке в аттаче. видно, что при удалении объекта изображение смещается вправо. если кому не понятно - могу подробнее расписать.
красный - луч лазера, серые линии - угол обзора камеры чёрные горизонтальные линии - плоскость на которой находится объект. объект изображён в различных местах красными точками. l1, l2 - расстояние до объекта. желтые линии - уголы под которыми наблюдается пятно. варьируя угол наклона лазера относительно центральной оптической оси камеры можно добиться экстримального значения, при котором смещение пятна лазера на 1 пиксель будет соответствовать минимальному приращению расстояния dl - что даст максимальную точность измерения. вобщем-то всю эту геометрию я уже подсчитал.
что касается http://www.pages.drexel.edu/~twd25/webcam_laser_ranger.html - вобщем-то это оно и есть только обрабатывать я предлагаю несколько по другому. понятно что обычному процу не составляет большого труда найти точку на картнке, но у моего проца мозги послабже. максимум что могу себе позволить - это какой-нибудь arm. отсюда и идут мои предложения со светофильтром. если изображение однотонно, то контроллеру всего-лишь нужно будет подсчитать мат ожидание и дисперсию, найти группу точек, которые больше среднеквадратичного отклонения - их и считать пятном. думаю, такую задачу и AVR осилит за доли секунды...
cupuyc Если на мат ожидание хватит то можно сделать фильтрацию очень легко. Запоминаем предыдущую картинку без лазера, а эту с лазером и вычисть одну из другой. Или поделить. Деление можно сделать так. Логарефмируем(табличная замена) И вычитаем. А потом,а после экспоненту берем опять таки табличная замена.
хорошая идея... меня вот что интересует: существуют ли готовые сборки, типа матрица + оптика + память для хранения снимка, т.е. что-то типа контроллера со встроенной камерой? как на оптических мышах... или же нужно поочерёдно считывать каждый пиксель с камеры? какие вообще существуют варианты работы с камерой?
у меня дома PocketPC завалялся - со встроеной камерой. хочу на нём для начала попробовать, как раз слил SDK.
CyberManiac Ну, если учесть, что речь идет о Советской Армии, там все может быть... Даже значение косинуса в военное время до трех доходить может