f Фотообмер парусов на плазе
Гонки и путешествия под парусом
Новости Регаты Рулевые Форум Видео Фотоконкурс Справочник

Автор Тема: Фотообмер парусов на плазе  (Прочитано 6040 раз)

0 Пользователей и 1 Гость смотрят эту тему.

ЗАК

  • Сообщений: 3507
  • Уважуха: +347/-139
  • Андрей Зворыкин М54
Фотообмер парусов на плазе
« : 07 Ноября, 2014, 03:48:38 »
Обмерять паруса на плазе таки приходится. В Воронеже обмерили несколько - либо лодка еще не была собрана, а данные уже надо, либо завалить практически невозможно - ФеГе какую-нить, например.

Если есть условия для обмера на плазе, то есть резон и за фотообмер подумать. Естественно, вожделенной халявы типа щелкнул, а фотошоп "сам" убрал все искажения и посчитал площадь, не будет. Потому, что не может быть в принципе. Экономия времени может произойти за счет отсутствия необходимости инструментальных (рулеточных) измерений на парусах. Если надо быстро обмерить несколько парусов, то экономия может быть существенной. Расплатой будет однократная разметка плаза. Или расстилаемой на нем "жесткой" тряпки, превосходящей по размерам обмеряемые паруса. Понятно, что тряпку можно расстилать на любой ровной поверхности не обязательно в эллинге.

Технология предполагается такая. Пусть есть плаз и различимые на нем точки с известными координатами в некоторой декартовой прямоугольной метрической системе (далее - плазовой системе (ПС)). Удобней и экономней всего нанести сетку с постоянным шагом по обеим осям (в этом случае координаты узлов сетки с клавиш вводить не надо, они считаются программно). Насколько густую - пока не ясно. Далее, нужна жестко закрепленная камера, обемлющая глазом этот плаз.
Делается снимок пустого плаза.

 
"Один ишак ишол, второй ишак ишол и третий ишак ишол и весь караван ишол"

ЗАК

  • Сообщений: 3507
  • Уважуха: +347/-139
  • Андрей Зворыкин М54
Re: Фотообмер парусов на плазе
« Ответ #1 : 07 Ноября, 2014, 03:59:31 »
Желательно, чтобы камера была подключена к компу и управлялась с него-же.
Снимок выводится на экран и узлы сетки скалываются экранным дигитайзером. В результате имеем плазовые координаты узлов сетки и их координаты в системе координат снимка (в геодезии она называется "картинной").

Теперь остается решить задачу перехода от картинных координат произвольной точки на снимке к её плазовым координатам. Получив такое решение, можно будет расстилать на плазе паруса, снимать их, скалывать на снимках контура и, получив картинные координаты точек контура, переходить к их плазовым координатам и расчитывать площади. Тряпку с сеткой можно и убрать, она больше не нужна до изменения положения камеры.

Собсно, существует два подхода к решению указанной задачи. Первый - детерминистский, т.е. тот, что применяется в фотограмметрии. Он сводится к полной аналитической формализации описания зависимости одних координат от других. Проще говоря, надо вывести формулы перехода. Они, кстати, уже давно выведены. Проблема в том, что надо достаточно точно знать "элементы внешнего и внутреннего ориентирования" камеры, что практически нереально. Да и объективы веб-камер (или бытовых) довольно далеки по свойствам от фототеодолитных и формулы фотограмметрии такой подлости не перенесут.

Второй подход - забыть о законах геометрической оптики и опираться на то, что между координатами точек в плазовой и картинной системе существует однозначное соответствие и на то, что это соответствие "гладкое". В том смысле, что если постепенно разсовмещать две изначально совпадающих точки, то разница их координат в обеих системах будет изменяться плавно, без скачков. В этом случае есть надежда научить машину обучаться переходить от картинных координат к плазовым на имеющемся материале - наборе координат одних и тех-же точек (узлов сетки) в обеих системах координат. При этом совершенно фиолетово, какие там искажения на снимке и чем они вызваны.

Естественно, у человека с верхним образованием в таком случае неминуемо возникнет желание сказать - "гавно вопрос, зачем изобретать лисапет, аппарат нелинейной регрессии давно известен". Однако такой подход нам, неучам, ненавистен. Это вариант детерминизма, но бессмысленного. Применяя те или иные базисные функции в регрессии и подгоняя к-ты к ним, искомой неизвестной функции навязывается определенная форма. Детерминация по существу. Но не в соответствии с законами физики, а в соответствии хрен знает с чем. Поэтому плазовые коодинаты точек будем рассматривать, как "пространственные случайные переменные"...

Однако, для начала надо сварганить аппарат для сколки картинных коодинат (это многие программы умеют) и их сохранения в угодном виде (тут проще сделать, чем лазать по тырнету в поисках халявы).
« Последнее редактирование: 07 Ноября, 2014, 04:49:38 от ЗАК »
"Один ишак ишол, второй ишак ишол и третий ишак ишол и весь караван ишол"

Сапёр Водичка

  • Сообщений: 1324
  • Уважуха: +49/-40
  • Название: Тигра
  • Тип: Handmade Cool&K
  • Номер: KAZ535
Re: Фотообмер парусов на плазе
« Ответ #2 : 07 Ноября, 2014, 07:56:34 »
Я по жизни вообще-то не говнюк и труды ЗАКа очень уважаю. Но тут вдруг влезу с одним предложением - как бы проверить для расчета площади парусов такую штуку как лазерная рулетка?
Например как здесь - http://999.md/13900841, да мильен ссылок. Очень, думается мне удобно, прямо на мачте или же на плазе (пляже), обвел лазером контуры паруса - вуаля - площадь.
Ну для  начала сравнить с имеющимся обмером, если совпадет, то в путь! Если нет, разбираться в погрешностях. А если этот метод заработает - как же все упростится!
С радостным духом он ветру свой парус подставил и поплыл.
Сидя на крепком плоту, искусной рукою все время
Правил рулем он, и сон на веки ему не спускался.

ЗАК

  • Сообщений: 3507
  • Уважуха: +347/-139
  • Андрей Зворыкин М54
Re: Фотообмер парусов на плазе
« Ответ #3 : 07 Ноября, 2014, 13:02:29 »
Очень, думается мне удобно, прямо на мачте или же на плазе (пляже), обвел лазером контуры паруса - вуаля - площадь.
Ну для  начала сравнить с имеющимся обмером, если совпадет, то в путь!
Лазерная рулетка по Вашей ссылке - это всего лишь дальномер с калькулятором в одном корпусе. Дальномер умеет мерить только расстояния и отличается от обычной рулетки только способом его измерения.

Измерив с одной станции расстояния до точек контура, вычислить площадь внутри контура никак не сможете, даже при помощи калькулятора. Даже если он китайский :) .  Если плаз строго горизонтален, то потребуется проделать это с двух станций - концов базиса, измерить базис и превышения станций над плазом. При этом расстояния измерять до одних и тех-же точек контура. Это называется линейной засечкой точек контура. Вот тогда и площадь можно будет расчитать.

Для решения подобных задач на местности в наше время применяются геодиметры - приборы совмещающие в себе дальномер и теодолит (измеритель горизонтальных и вертикальных проекций углов). В этом случае можно работать с одной станции, используя "висячую" линейно-угловую засечку, ее еще "усом" называют.  В лазерной рулетке измерителя углов нет.

Если не верите мне, а верите в чудеса, проделайте эксперимент. Положите на пол какой-нибудь прямоугольник или треугольник  и измерьте до его углов расстояния обычной рулеткой (она дешевле) от какой-то точки. Попробуйте по по этим измерениям расчитать площадь. Конечно, делать этого не стоит - не получится нифига.

А еще у меня предложение - проверять свои идеи самостоятельно.
"Один ишак ишол, второй ишак ишол и третий ишак ишол и весь караван ишол"

ЗАК

  • Сообщений: 3507
  • Уважуха: +347/-139
  • Андрей Зворыкин М54
Re: Фотообмер парусов на плазе
« Ответ #4 : 08 Ноября, 2014, 02:50:52 »
Окошко испекаемой программы. Здесь введены параметры сетки, по ним расчитаны плазовые координаты узлов и происходит сколка картинных координат. Сколотые точки маркируются. В результате получаем координаты узлов в обеих системах. Надо разделить все точки на две группы - "обучающую" и контрольную и попыряться уже с содержательной частью. По обучающей группе программа должна построить правило перехода от картинных координат к плазовым и применить его к картинным координатам точек контрольной группы. Полученные плазовые координаты этих точек сравнить с фактическими. Если получится фигня, искать другое решающее правило.
"Один ишак ишол, второй ишак ишол и третий ишак ишол и весь караван ишол"

Сергей_Р_Спб

  • Сообщений: 482
  • Уважуха: +68/-47
  • Тип: Ветер
  • Номер: СП 128
Re: Фотообмер парусов на плазе
« Ответ #5 : 08 Ноября, 2014, 15:54:51 »
Может я не совсем понимаю суть и скажу глупость.
А нельзя посчитать целые квадраты, а нецелые разбивать на более маленькие, пока нас не устроит точность разбивки. Ведь если накрыть парусом бесконечно малые квадраты и просто их посчитать, то будет то что мы ищем? То есть я предлагаю сделать 1 алгоритм разбивки неполных квадратов на более маленькие, пока нас не устроит точность. разбивка разумеется программно
« Последнее редактирование: 08 Ноября, 2014, 18:26:03 от Сергей_Р_Спб »

ЯsailoR

  • Сообщений: 1577
  • Уважуха: +93/-40
  • Аверин Никита
  • Название: "Фалькон"
  • Тип: L&K Спорт-круиз "R"
  • Номер: 9
Re: Фотообмер парусов на плазе
« Ответ #6 : 08 Ноября, 2014, 18:05:27 »
ЗАК, читаю тебя как Стругацких :)
Интересный эксперимент.
« Последнее редактирование: 08 Ноября, 2014, 18:11:00 от ЯsailoR »
Вся моя жизнь - история борьбы между "Надо" внешнего мира и "Похер" внутреннего Я.

Трим

  • Сообщений: 201
  • Уважуха: +38/-6
  • Олег Дьяков, Воронеж
  • Тип: маран
  • Номер: В7, В8
Re: Фотообмер парусов на плазе
« Ответ #7 : 08 Ноября, 2014, 23:19:55 »
Хороша задумка облегчить труды.
Пока купаешься в математических высях, буду стрелять по тебе с земли.
1. Нормальный штатив с собой не потаскаешь особо для этих дел, придется пользоваться легкими из магазина фототехники. А они дристлявые. Да и камеры мыльнообразные не отличаются особой жесткостью. Прикидывал погрешности?
А даже если все жестко, то какая-нибудь сволочь в перерыве между съемками обязательно мимоходом заденет и сдвинет. Поэтому мне кажется, что сетку (отсняв однажды за сессию) убирать нельзя. А если так, возможно ли снимать "с руки" и единожды для каждого паруса, лежащего на сетке, а не делать два снимка с одной жесткой  точки?
2. Не могу однозначно понять - программа будет считать в итоге площадь фигуры, огранниченной шкаторинами или, используя контрольные точки, определять длины отрезков, нужные для обсчета парусей  по неким правилам обмера?
3. У меня монитор тяжелый и поворачивать на бок тяжело, чтобы любоваться кухней. Да и паруса привычнее видель гравитационно ориентироваными. Ну это просто брех.

ЗАК

  • Сообщений: 3507
  • Уважуха: +347/-139
  • Андрей Зворыкин М54
Re: Фотообмер парусов на плазе
« Ответ #8 : 08 Ноября, 2014, 23:44:35 »
Мне Стругацких читать намного интересней. А вот реализовывать фантазии интересно свои.

А нельзя посчитать целые квадраты, а нецелые разбивать на более маленькие, пока нас не устроит точность разбивки. Ведь если накрыть парусом бесконечно малые квадраты и просто их посчитать, то будет то что мы ищем? То есть я предлагаю сделать 1 алгоритм разбивки неполных квадратов на более маленькие, пока нас не устроит точность. разбивка разумеется программно

Сергей, у меня есть цель и планчик её достижения. Никакому другому я следовать не буду из козлиного упрямства. "Метод палетки" в меня вколотили в школе, но пользоваться им не буду вовсе не поэтому.
Вот Вы пишете "просто посчитать". Как? Те, что накрыты парусом, посчитать непосредственно невозможно. Можно посчитать только не накрытые и накрытые частично. Но это не принципиально. А принципиально - как именно Вы собираетесь считать и передавать свой счёт машине? Понятно, что можно все перетыкать мышом, а машина пусть  ведет счетчик. Но где экономия по сравнению со сколкой контура? Практически число точек контура не превышает 20-ти, а обычно вдвое меньше. Кроме того, я ожидаю, что шаг сетки в моем предполагаемом способе будет допустИм гораздо больший, чем для метода палетки. Стало быть, клеточек и узлов намного меньше. Это важно, хотя сколка узлов делается однократно (если веб-камера прибита к стене, столбу, крокве, ригелю ит.д. гвоздём).

Вы пишете "разбивка разумеется программно". Программно можно разбить изображение, но не плаз. Проводя разбивку уже не квадрата на плазе, а его искаженного изображения, частично перекрытого парусом (а другие разбивать бессмысленно), поимеем трудности при программировании. А потом опять главное - как считать мелкие кусочки, не накрытые  и частично накрытые парусом, получившиеся в рез. разбивки и во что это обойдется?

Еще на всякий случай: граждан из числа желающих предложить мне анализировать цвета пикселей фотографии на предмет принадлежности пикселя парусу или плазу прошу заняться этим самостоятельно. Я этим заниматься не буду. Потамушто. Вообще, господа, вас тут целый маринс недорезанный с его огромной потенцией и у всех куча идей типа "а почему бы не сделать примерно так". Вперед, за орденами, делайте. А то тоска смертная, посоревноваться не с кем.

День прошел бездарно в езде и уколах всякому мелкому скоту, а ему еще и не нравится! Одно слово, скот.
« Последнее редактирование: 08 Ноября, 2014, 23:58:32 от ЗАК »
"Один ишак ишол, второй ишак ишол и третий ишак ишол и весь караван ишол"

ЗАК

  • Сообщений: 3507
  • Уважуха: +347/-139
  • Андрей Зворыкин М54
Re: Фотообмер парусов на плазе
« Ответ #9 : 08 Ноября, 2014, 23:56:21 »
Олег, привет! Пока я свирепствовал, появился твой пост.

Я как раз имел в виду твой сарай, пардон - эллинг, где мы пруса мерили. Штатив своротят всенепременно. Поэтому камеру крепить к стене под потолок или к ригелю. Я вчера пробовал - прищепил вебку к занавесочному карнизу и кинул кишку на комп. Все бы хорошо, изображение захватывается, но камера паршивая. Если на свете есть вебки с большим разрешением, то проблемов нет. Какая там ней дисторсия и прочая кривь - должно быть неважно.

>>2. Не могу однозначно понять - программа будет считать в итоге площадь фигуры, огранниченной шкаторинами или, используя контрольные точки, определять длины отрезков, нужные для обсчета парусей  по неким правилам обмера?<<

Площадь. Любители использования дыр в ПОМ выкусят.
"Один ишак ишол, второй ишак ишол и третий ишак ишол и весь караван ишол"