Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2006.05.21;
Скачать: [xml.tar.bz2];

Вниз

Диплом   Найти похожие ветки 

 
veter   (2006-04-26 10:49) [0]

Уважаемые мастера, есть такая проблема, нужно написать программу по видеонаблюдению за контрастными объектами.Подробнее-у нас есть камера узкого угла обзора, есть самолёт-задача: нужно, чтобы стойка, на которой находится камера сопровождала движение самолёта и на экране самолёт занимал 2\3 экрана. Кто может помочь, готов оплатить работу


 
Думкин ©   (2006-04-26 10:59) [1]

Это стоит.
для тупых повторю - это стоит. денег. И не малых.
У вас есть эти деньги? Тогда мое мыло в анкете.


 
TUser ©   (2006-04-26 11:00) [2]

Я могу - $5000 и пол-года. + мне лично полные коорлинаты учебного заведения, где раздают дипломы за бабло. Точная цена и сроки - после детального обговаривания задания.


 
tsa   (2006-04-26 11:01) [3]

Удалено модератором


 
TUser ©   (2006-04-26 11:01) [4]

Да, мыло - тоже в анкете.


 
Думкин ©   (2006-04-26 11:02) [5]

Удалено модератором


 
tsa   (2006-04-26 11:04) [6]

Удалено модератором


 
Calm ©   (2006-04-26 12:22) [7]

Бесплатно. Так сказать шароварно :)
1. С помощью простой, предварительно обученной нейросети выцепляем изображение самолета. Если самолет какой-то совсем простой (прямоугольный например :)) ), то может можно фильтром на матрицах (не помню как это научно, в фотошопе есть)
Если картинка сильно цветная, а самолет определнного цвета, то можно поиграться радиометрией.
2. Смотрим, где зафиксирован самолет. Например справа. Значит надо камеру повернуть правее. Если слева - то левее.


 
Карелин Артем ©   (2006-04-26 12:30) [8]


> Calm ©   (26.04.06 12:22) [7]

Для лучшего зацепления самолет должен быть в виде идеального шара!


 
KilkennyCat ©   (2006-04-26 12:34) [9]

на мой взгляд, если объекты контрастны, если поворотное устройство камеры доступно -  задача несложная, на месяц работы, и стоит не более 500$

А 5000 баксов и полгода, это - сильно... я бы столько требовал за УНИВЕРСАЛЬНУЮ программу, а не за УЗКОСПЕЦИАЛИЗИРОВАННУЮ.


 
Карелин Артем ©   (2006-04-26 12:37) [10]


> KilkennyCat ©   (26.04.06 12:34) [9]

Только ведь они не контрастны и проекция самолета на камеру принимает разный облик.


 
KilkennyCat ©   (2006-04-26 12:39) [11]


>  [10] Карелин Артем ©   (26.04.06 12:37)


нужно написать программу по видеонаблюдению за контрастными объектами.


 
KilkennyCat ©   (2006-04-26 12:40) [12]

формы самолета, проекция и облик - ерунда, при условии статичности фона.


 
Думкин ©   (2006-04-26 12:41) [13]

Я таки и не понял. где вопрос о деньгах - озвучили?


 
Calm ©   (2006-04-26 12:43) [14]


> формы самолета, проекция и облик - ерунда, при условии статичности
> фона.
>

Статичный фон на стройке :)))) Долгостой что ли?


> Для лучшего зацепления самолет должен быть в виде идеального
> шара!
>

по-моему, вы ошибатесь. Лучшую "зацепляемость" даст идеальный квадрат :))


 
Карелин Артем ©   (2006-04-26 12:45) [15]


> Calm ©   (26.04.06 12:43) [14]

В зависимости от угла зрения он может быть ромбом или прямоугольником. А шар он и есть шар. Как на него не смотри


 
balepa ©   (2006-04-26 12:51) [16]


> Карелин Артем ©   (26.04.06 12:45) [15]


А мне иногда кажется что это круг ;)


 
Карелин Артем ©   (2006-04-26 12:52) [17]


> balepa ©   (26.04.06 12:51) [16]

Это проекция кругом будет ;)


 
Лшдлуттнсфе   (2006-04-26 12:54) [18]


>  [14] Calm ©   (26.04.06 12:43)


ткните меня носом туда, где что-то написано про стройку. И потом, статичность - она может быть относительной. если один объект изменяет свою форму за время t, а другой на его фоне за время t/10000 ?


 
Calm ©   (2006-04-26 13:04) [19]


> ткните меня носом туда,


Гм.. ошибочка. Там написано "стойка" :)


 
TUser ©   (2006-04-26 14:00) [20]

> нужно написать программу по видеонаблюдению за >контрастными объектами.

> формы самолета, проекция и облик - ерунда, при условии статичности фона.

Это заказчику кажется, что объекты контрастны и фон статичен. А требует он правильной работы программы.


 
Лшдлуттнсфе   (2006-04-26 16:10) [21]


> [20] TUser ©   (26.04.06 14:00)


Телепат? Знаешь, что заказчику кажется?


 
Nic ©   (2006-04-26 16:57) [22]

Я одного не понимаю. Зачем людям высшее образование? Покупают зачёты, курсовые, дипломы.. Хм. Очень печальное зрелище. Разогнал бы минимум 75% бюджетников, ибо им это не надо.
Так просто, мысли вслух...


 
ANB ©   (2006-04-26 17:29) [23]


> KilkennyCat ©   (26.04.06 12:34) [9]
> на мой взгляд, если объекты контрастны, если поворотное
> устройство камеры доступно -  задача несложная, на месяц
> работы, и стоит не более 500$
>
> А 5000 баксов и полгода, это - сильно... я бы столько требовал
> за УНИВЕРСАЛЬНУЮ программу, а не за УЗКОСПЕЦИАЛИЗИРОВАННУЮ.
>

Ну так пиши. :)


 
antonn ©   (2006-04-27 06:56) [24]

Nic ©   (26.04.06 16:57) [22]
Зачем людям высшее образование? Покупают зачёты, курсовые, дипломы..

Покупка диплома/курсовой еще не значит лень и отсутсвие мозгов...


 
Игорь Шевченко ©   (2006-04-27 10:27) [25]


> Покупка диплома/курсовой еще не значит лень и отсутсвие
> мозгов...


Да ну ? А что же значит покупка диплома/курсовой по мнению уважаемого оратора ?


 
Imp5   (2006-04-27 10:29) [26]

согласен за $4500


 
Alx2 ©   (2006-04-27 10:37) [27]

>antonn ©   (27.04.06 06:56)

Ну да.

"Не нужно быть - сумей прослыть, не беда,
Не нужно быть - сумей прослыть, и тогда
Повсюду ждет тебя почет,
А забот - никаких и никогда!"

:)


 
Calm ©   (2006-04-27 10:51) [28]


> Разогнал бы минимум 75% бюджетников

Разогнал бы 95% платников. Кстати, на нашем потоке в свое время так и сделали. Из 2 групп платников осталось человек 7.


 
Nic ©   (2006-04-27 10:55) [29]


> Calm ©   (27.04.06 10:51) [28]

Платники сами платят и могут вообще не учиться. Это их дело. А бюджетники не платят за своё образование, даже стипендию получают. Но подавляющее большинство не определилось, что же они хотят получить в результате. Боюсь, что со 100 человек с моего потока классными специалистами станут единицы.


 
Карелин Артем ©   (2006-04-27 11:04) [30]

В нашей группе 75% платников сами убежали. Потому что они хотели конкретные знания, которые им обещали в рекламе специальности, а не что-то другое.
Самарский гос. Технический Университет. Технические средства защиты информации и охраны объектов.


 
begin...end ©   (2006-04-27 11:06) [31]

> Nic ©   (27.04.06 10:55) [29]

> Платники сами платят и могут вообще не учиться. Это их дело.

А бюджетники -- не платят. Но они тоже могут вообще не учиться. И это тоже их дело.

В чём здесь разница между теми и другими -- непонятно.

Но если они вообще не учатся, то они должны просто вылететь, без диплома. Как платники, так и бюджетники.


 
antonn ©   (2006-04-27 15:26) [32]

Игорь Шевченко ©   (27.04.06 10:27) [25]
А что же значит покупка диплома/курсовой по мнению уважаемого оратора ?

вполне возможно, отсутствие времени на его изготовление.

PS Я имел ввиду под "покупкой" создание работы третьим лицом, защита "своя".


 
antonn ©   (2006-04-27 15:27) [33]

begin...end ©   (27.04.06 11:06) [31]
Но они тоже могут вообще не учиться.

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


 
antonn ©   (2006-04-27 15:28) [34]

antonn ©   (27.04.06 15:27) [33]
был

бал :)


 
Gero ©   (2006-04-27 16:04) [35]

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


 
Игорь Шевченко ©   (2006-04-27 16:07) [36]

antonn ©   (27.04.06 15:26) [32]


> вполне возможно, отсутствие времени на его изготовление.
>  


Дорогой друг, самостоятельное выполнение курсовых работ и создание и защита диплома входит в обязанности студента, понял, да ?

А если у него нету на это времени, пусть одевает кирзовые сапоги и идет защищать Родину.


 
Marser ©   (2006-04-27 16:33) [37]

> [36] Игорь Шевченко ©   (27.04.06 16:07)
> antonn ©   (27.04.06 15:26) [32]
>
>
> > вполне возможно, отсутствие времени на его изготовление.
> >  
>
>
> Дорогой друг, самостоятельное выполнение курсовых работ
> и создание и защита диплома входит в обязанности студента,
> понял, да ?

Да причём тут обязанности? Человек сам выбирает - или он делает курсовую/диплом сам, при этом перелопачивает множество источников и приобретает определенные полезные знания, навыки и опыт, либо занимается самообманом ради практически бесполезной в таком случае корочки. Конечно, вышеперечисленное часто несравнимо с реальной деятельностью, но всё равно шттука для неё полезная.


 
Игорь Шевченко ©   (2006-04-27 16:45) [38]

Marser ©   (27.04.06 16:33) [37]


> Да причём тут обязанности?


У вас нет обязанностей, прописанных в правилах (уставе) вашего учебного заведения ?


 
Marser ©   (2006-04-27 16:53) [39]

> [38] Игорь Шевченко ©   (27.04.06 16:45)
> Marser ©   (27.04.06 16:33) [37]
>
>
> > Да причём тут обязанности?
>
>
> У вас нет обязанностей, прописанных в правилах (уставе)
> вашего учебного заведения ?

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


 
Игорь Шевченко ©   (2006-04-27 16:55) [40]

Marser ©   (27.04.06 16:53) [39]


> Есть


Тогда об чем базар ?

Или там предусмотрена покупка курсовых/дипломов ? Я не в курсе сегодняшних реалий, в мое время такого пункта не существовало.


 
Marser ©   (2006-04-27 17:00) [41]

> [40] Игорь Шевченко ©   (27.04.06 16:55)
> Marser ©   (27.04.06 16:53) [39]
>
>
> > Есть
>
>
> Тогда об чем базар ?
>
> Или там предусмотрена покупка курсовых/дипломов ? Я не в
> курсе сегодняшних реалий, в мое время такого пункта не существовало.

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


 
antonn ©   (2006-04-27 17:57) [42]

Игорь Шевченко ©   (27.04.06 16:07) [36]
бывают ситуации, не зависящие от студента, когда свои обязанности он выполнят не успевает. Например, семья (тяжелое положение, две работы...), здоровье (ну поломал чего, академку взять не успел (у нас можно взять только до госов, после госов 3 месяца на диплом)). Знаю человека, машина его сбила, сломал ключицу и руку (точно где - не знаю как называется, ниже локтя). Отлеживался в больнице, время упустил, заказал диплом (правда загодя, не за неделю до сдачи), немного подрихтовал, защитил на отл. (специальность техническая, т.ч. коммиссия дотошная и незнание/просчет выявляется, пусть и не сразу). Через какое то время внедрил на производстве (стенд какой то, в следующем семестре студенты в той лаборатории занимались), где сам и работал (дядька уже был, не молодой:)).

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


 
Игорь Шевченко ©   (2006-04-27 18:13) [43]

antonn ©   (27.04.06 17:57) [42]


> бывают ситуации, не зависящие от студента, когда свои обязанности
> он выполнят не успевает


Тогда ему в студентах нечего делать, разве не так ?


> Например, семья (тяжелое положение, две работы...),


Как это связано со студенчеством ? Уходи из ВУЗа, иди работай хоть на трех работах


> Так какая разница, кто "соберет", я или дядя за мани?


В таком случае и диплом нужно давать дяде, верно ? Тебе-то он нахрен сдался ?


 
Alx2 ©   (2006-04-27 18:23) [44]

>antonn ©   (27.04.06 17:57)

Вот нафига в вузе тогда требуют самостоятельность в написании дипома, а?
Так, по "здравому смыслу", стоит узаконить такой подход: вот вам, студенты, книжка. И за год разберитесь-ка что в ней понаписано, да расскажите.

Цель диплома не в том, чтобы его надыбать и сдать. Цель - показать, что умеешь работать по специальности.

Как всегда, кто-то живет по законам, а кто-то по понятиям.


 
antonn ©   (2006-04-27 19:08) [45]

Игорь Шевченко ©   (27.04.06 18:13) [43]
Тогда ему в студентах нечего делать, разве не так ?

не так:)


> В таком случае и диплом нужно давать дяде, верно ?
> Тебе-то он нахрен сдался ?

диплом-то? действительно, а зачем мне диплом-то, я его сделал, сдал, получил корочку и забыл... куда важнее те знания, которые я получил за время обучения в институте. А корочку без диплома не дадут:) А без корочки, обычно, никто не верит в знания... Имхо, госы страшнее и показательней, там задание дают за сутки до сдачи, вот уж где точно нужно знать (знать или материал, или где искать) + вопросы по, почти, всему курсу.

Alx2 ©   (27.04.06 18:23) [44]
Так, по "здравому смыслу", стоит узаконить такой подход: вот вам, студенты, книжка. И за год разберитесь-ка что в ней понаписано, да расскажите.

практически так оно и происходит, имхо... только все это оформляется соответствующим образом.

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

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


 
Игорь Шевченко ©   (2006-04-27 19:11) [46]

antonn ©   (27.04.06 19:08) [45]


> не так:)


Почему же ? Поступая в ВУЗ, человек вообще-то принимает на себя некоторые обязательства.


 
Gero ©   (2006-04-27 19:21) [47]

> [45] antonn ©   (27.04.06 19:08)

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


 
antonn ©   (2006-04-27 19:23) [48]

Игорь Шевченко ©   (27.04.06 19:11) [46]
Поступая в ВУЗ, человек вообще-то принимает на себя некоторые обязательства.

и? получая права на вождение ТС, мы обязуемся соблюдать правила и не создавать аварийных ситуаций. Однако, не поверю, что получивший права ниразу не нарушил какое либо правило. И что, отказаться от машины?


 
Alx2 ©   (2006-04-27 19:23) [49]

>antonn ©   (27.04.06 19:08)

Понял мысль. Но не согласен, что такой подход приемлем. Остается ужесточать защиту работы :)


 
antonn ©   (2006-04-27 19:25) [50]

Gero ©   (27.04.06 19:21) [47]
Была бы моя воля, я бы тех, кто не может нормально защитится (от корки до корки), сразу бы исключал из ВУЗа.

я бы тоже... остается все таки понять, как покупка связана со сдачей... я про этот момент пытался говорить.


 
oldman ©   (2006-04-27 19:25) [51]


> Gero ©   (27.04.06 19:21) [47]
>  Сейчас образование настолько себя дискредитировало, что
> наличие вышки не говорит практически ни о чем.


источник в студию...
типа МАИ или Бауманка - фуфло полное?
"Не свисти! Арматурка - вон там! Я сам видел, как там арматуру брали!" (СамЗнаешьОткуда ©)


 
Gero ©   (2006-04-27 19:33) [52]

> источник в студию

Мои субъективные ощущения, основанные на общение с «молодыми специалистами». Большинство не знает нифига. Ломятся туда все подряд, потому как это сейчас модно, а многим оно вовсе не надо, не их это. Но так как есть возможность платить и не учиться, то все нормально.


 
Marser ©   (2006-04-27 19:44) [53]

> Gero ©  

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


 
Gero ©   (2006-04-27 19:49) [54]

> Marser ©   (27.04.06 19:44)

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


 
Nic ©   (2006-04-27 20:44) [55]


> Gero ©   (27.04.06 19:33) [52]
> > источник в студию
>
> Мои субъективные ощущения, основанные на общение с «молодыми
> специалистами». Большинство не знает нифига. Ломятся туда
> все подряд, потому как это сейчас модно, а многим оно вовсе
> не надо, не их это. Но так как есть возможность платить
> и не учиться, то все нормально.

+1!
У меня в потоке похоже один я рад, что у нас такие предметы интересные в программе. Зачем девушкам программирование, БД, ИСы... У них эти области вне их интересов. Парни почти все от армии отсиживаются. Тоска!


 
MVova ©   (2006-04-27 21:06) [56]

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls, ExtCtrls;

type
 TForm1 = class(TForm)
   Image1: TImage;
   Panel1: TPanel;
   procedure Button1Click(Sender: TObject);
   procedure Panel1MouseDown(Sender: TObject; Button: TMouseButton;
     Shift: TShiftState; X, Y: Integer);
   procedure Panel1MouseUp(Sender: TObject; Button: TMouseButton;
     Shift: TShiftState; X, Y: Integer);
   procedure Panel1MouseMove(Sender: TObject; Shift: TShiftState; X,
     Y: Integer);
   procedure btnFindClick(Sender: TObject);
 private
   move: boolean;
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

const
 col: integer = $00FFFFFF;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
 Image1.Picture.Bitmap.Canvas.CopyRect(
  Form1.Canvas.ClipRect,
  Form1.Canvas,
  Image1.Canvas.ClipRect);

  btnFindClick(nil);
end;

procedure TForm1.Panel1MouseDown(Sender: TObject; Button: TMouseButton;
 Shift: TShiftState; X, Y: Integer);
begin
 move := true;
end;

procedure TForm1.Panel1MouseUp(Sender: TObject; Button: TMouseButton;
 Shift: TShiftState; X, Y: Integer);
begin
 move := false;
end;

procedure TForm1.Panel1MouseMove(Sender: TObject; Shift: TShiftState; X,
 Y: Integer);
begin
 if move then
 begin
   Panel1.SetBounds(Panel1.Left + x, Panel1.Top + y, 41, 41);
   Button1Click(nil);
 end;
end;

function IfInBorder(x, y: Integer; canv : TCanvas): boolean;
begin
 Result :=
   (canv.Pixels[x,y] = col) and
   (
     (canv.Pixels[x,y-1] <> col) or
     (canv.Pixels[x+1,y] <> col) or
     (canv.Pixels[x,y+1] <> col) or
     (canv.Pixels[x-1,y+1] <> col) or
     (canv.Pixels[x+1,y-1] <> col) or
     (canv.Pixels[x+1,y+1] <> col) or
     (canv.Pixels[x-1,y-1] <> col)
   )
end;

procedure TForm1.btnFindClick(Sender: TObject);
var
canv : TCanvas;
x, y : integer;
begin
 canv := Image1.Canvas;
 x := 1;
 while x < Image1.Width do
 begin
   y := 1;
   while y < Image1.Height do
     begin
       if IfInBorder(x, y, canv) then
         begin
           canv.Pixels[x-10,y-10] := 0;
         end;
       inc(y, 1);
     end;
   inc(x, 1);
 end
end;

end.


ногами не бить
писано на коленке за 10 мин :)


 
MVova ©   (2006-04-27 21:13) [57]

Оптимизировано по скорости :)

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls, ExtCtrls;

type
 TForm1 = class(TForm)
   Image1: TImage;
   Panel1: TPanel;
   procedure Button1Click(Sender: TObject);
   procedure Panel1MouseDown(Sender: TObject; Button: TMouseButton;
     Shift: TShiftState; X, Y: Integer);
   procedure Panel1MouseUp(Sender: TObject; Button: TMouseButton;
     Shift: TShiftState; X, Y: Integer);
   procedure Panel1MouseMove(Sender: TObject; Shift: TShiftState; X,
     Y: Integer);
   procedure btnFindClick(Sender: TObject);
 private
   move: boolean;
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

const
 col: integer = $00FFFFFF;
 step: byte = 5;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
 Image1.Picture.Bitmap.Canvas.CopyRect(
  Form1.Canvas.ClipRect,
  Form1.Canvas,
  Image1.Canvas.ClipRect);

  btnFindClick(nil);
end;

procedure TForm1.Panel1MouseDown(Sender: TObject; Button: TMouseButton;
 Shift: TShiftState; X, Y: Integer);
begin
 move := true;
end;

procedure TForm1.Panel1MouseUp(Sender: TObject; Button: TMouseButton;
 Shift: TShiftState; X, Y: Integer);
begin
 move := false;
end;

procedure TForm1.Panel1MouseMove(Sender: TObject; Shift: TShiftState; X,
 Y: Integer);
begin
 if move then
 begin
   Panel1.SetBounds(Panel1.Left + x, Panel1.Top + y, 41, 41);
   Button1Click(nil);
 end;
end;

function IfInBorder(x, y: Integer; canv : TCanvas): boolean;
begin
 Result :=
   (canv.Pixels[x,y] = col) and
   (
     (canv.Pixels[x,y-step] <> col) or
     (canv.Pixels[x+step,y] <> col) or
     (canv.Pixels[x,y+step] <> col) or
     (canv.Pixels[x-step,y+step] <> col) or
     (canv.Pixels[x+step,y-step] <> col) or
     (canv.Pixels[x+step,y+step] <> col) or
     (canv.Pixels[x-step,y-step] <> col)
   )
end;

procedure TForm1.btnFindClick(Sender: TObject);
var
canv : TCanvas;
x, y : integer;
begin
 canv := Image1.Canvas;
 x := 1;
 while x < Image1.Width do
 begin
   y := 1;
   while y < Image1.Height do
     begin
       if IfInBorder(x, y, canv) then
         begin
           canv.Pixels[x-10,y-10] := 0;
         end;
       inc(y, step);
     end;
   inc(x, step);
 end
end;

end.


 
MVova ©   (2006-04-27 21:20) [58]

Улутшена перерисовка
Добавленна возможность работы с несколькими панельками

:)

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls, ExtCtrls;

type
 TForm1 = class(TForm)
   Image1: TImage;
   Panel1: TPanel;
   Panel2: TPanel;
   procedure Button1Click(Sender: TObject);
   procedure Panel1MouseDown(Sender: TObject; Button: TMouseButton;
     Shift: TShiftState; X, Y: Integer);
   procedure Panel1MouseUp(Sender: TObject; Button: TMouseButton;
     Shift: TShiftState; X, Y: Integer);
   procedure Panel1MouseMove(Sender: TObject; Shift: TShiftState; X,
     Y: Integer);
   procedure btnFindClick(Sender: TObject);
   procedure FormCreate(Sender: TObject);
 private
   move: boolean;
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

const
 col: integer = $00FFFFFF;
 step: byte = 5;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
 Image1.Picture.Bitmap.Canvas.CopyRect(
  Form1.Canvas.ClipRect,
  Form1.Canvas,
  Image1.Canvas.ClipRect);

  btnFindClick(nil);
end;

procedure TForm1.Panel1MouseDown(Sender: TObject; Button: TMouseButton;
 Shift: TShiftState; X, Y: Integer);
begin
 move := true;
end;

procedure TForm1.Panel1MouseUp(Sender: TObject; Button: TMouseButton;
 Shift: TShiftState; X, Y: Integer);
begin
 move := false;
end;

procedure TForm1.Panel1MouseMove(Sender: TObject; Shift: TShiftState; X,
 Y: Integer);
var
 Panel : TPanel;
begin
 if move then
 begin
   Panel := sender as TPanel;
   Panel.SetBounds(Panel.Left + x, Panel.Top + y, 41, 41);
   Button1Click(nil);
 end;
 Refresh;
end;

function IfInBorder(x, y: Integer; canv : TCanvas): boolean;
begin
 Result :=
   (canv.Pixels[x,y] = col) and
   (
     (canv.Pixels[x,y-step] <> col) or
     (canv.Pixels[x+step,y] <> col) or
     (canv.Pixels[x,y+step] <> col) or
     (canv.Pixels[x-step,y+step] <> col) or
     (canv.Pixels[x+step,y-step] <> col) or
     (canv.Pixels[x+step,y+step] <> col) or
     (canv.Pixels[x-step,y-step] <> col)
   )
end;

procedure TForm1.btnFindClick(Sender: TObject);
var
canv : TCanvas;
x, y : integer;
begin
 canv := Image1.Canvas;
 x := 1;
 while x < Image1.Width do
 begin
   y := 1;
   while y < Image1.Height do
     begin
       if IfInBorder(x, y, canv) then
         begin
           canv.Pixels[x-10,y-10] := 0;
         end;
       inc(y, step);
     end;
   inc(x, step);
 end
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
 DoubleBuffered := true;
end;

end.


 
Sergey Masloff   (2006-04-27 21:57) [59]

Gero ©   (27.04.06 16:04) [35]
>Платников вобще нужно запретить. А за взятки — сажать. Вот тогда будет >действительно высшее образование. Конечно, для этого нужно >преподавателям платить нормальные зарплаты, но это другой вопрос.
Нет, ошибаешься. Запретить надо бесплатников а платников учить на общих основаниях не сдал - в аут. Но это уже обсуждали, повторяться лень.


 
programania ©   (2006-04-27 21:58) [60]

Если кроме самолета ничего не движется можно найти разницу
соседних кадров и управлять камерой так чтобы эта
разница была в центре и 2/3 размера


 
MVova ©   (2006-04-27 22:26) [61]

С отрисовкой центра:
А 2/3 сам доделай
С определением пиксела IfInBorder надо подправить
А также надо сделать процедуру управления камерой

А вот "экране самолёт занимал 2\3 экрана." это надо зумом управлять?
Если да то тоже не беда

:)

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls, ExtCtrls, Contnrs;

type
 TForm1 = class(TForm)
   Image1: TImage;
   Panel1: TPanel;
   Panel2: TPanel;
   Panel3: TPanel;
   procedure Button1Click(Sender: TObject);
   procedure Panel1MouseDown(Sender: TObject; Button: TMouseButton;
     Shift: TShiftState; X, Y: Integer);
   procedure Panel1MouseUp(Sender: TObject; Button: TMouseButton;
     Shift: TShiftState; X, Y: Integer);
   procedure Panel1MouseMove(Sender: TObject; Shift: TShiftState; X,
     Y: Integer);
   procedure btnFindClick(Sender: TObject);
   procedure FormCreate(Sender: TObject);
 private
   move: boolean;
   procedure PaintX(x, y : Integer; canv : TCanvas);
 public
   { Public declarations }
 end;

var
 Form1: TForm1;
 AXMax : Integer;
 AXMin : Integer;
 AYMax : Integer;
 AYMin : Integer;

const
 col: integer = $00FFFFFF;
 step: byte = 10;

implementation

uses Math;

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
 Image1.Picture.Bitmap.Canvas.CopyRect(
  Form1.Canvas.ClipRect,
  Form1.Canvas,
  Image1.Canvas.ClipRect);

  btnFindClick(nil);
end;

procedure TForm1.Panel1MouseDown(Sender: TObject; Button: TMouseButton;
 Shift: TShiftState; X, Y: Integer);
begin
 move := true;
end;

procedure TForm1.Panel1MouseUp(Sender: TObject; Button: TMouseButton;
 Shift: TShiftState; X, Y: Integer);
begin
 move := false;
end;

procedure TForm1.PaintX(x, y : Integer; canv : TCanvas);
const
 n = 5;
begin
 canv.MoveTo(x, y);
 canv.LineTo(x + n, y + n);
 canv.MoveTo(x, y);
 canv.LineTo(x - n, y + n);
 canv.MoveTo(x, y);
 canv.LineTo(x - n, y - n);
 canv.MoveTo(x, y);
 canv.LineTo(x + n, y - n);

 Caption := IntToStr(x) + " : " + IntToStr(y);
end;

procedure TForm1.Panel1MouseMove(Sender: TObject; Shift: TShiftState; X,
 Y: Integer);
var
 Panel : TPanel;
begin
 if move then
 begin
   Panel := sender as TPanel;
   Panel.SetBounds(Panel.Left + x, Panel.Top + y, 41, 41);
   Button1Click(nil);
   PaintX((AXMax + AXMin) div 2, (AYMax + AYMin) div 2, Image1.Canvas);
   AXMax := 0;
   AXMin := 600;
   AYMax := 0;
   AYMin := 600;
 end;
 Refresh;
end;

function IfInBorder(x, y: Integer; canv : TCanvas): boolean;
begin
 Result :=
   (canv.Pixels[x,y] = col) and
   (
     (canv.Pixels[x,y-step] <> col) or
     (canv.Pixels[x+step,y] <> col) or
     (canv.Pixels[x,y+step] <> col) or
     (canv.Pixels[x-step,y+step] <> col) or
     (canv.Pixels[x+step,y-step] <> col) or
     (canv.Pixels[x+step,y+step] <> col) or
     (canv.Pixels[x-step,y-step] <> col)
   );

 if Result then
 begin
   AXMax := Max(AXMax, x);
   AXMin := Min(AXMin, x);
   AYMax := Max(AYMax, y);
   AYMin := Min(AYMin, y);
 end;
end;

procedure TForm1.btnFindClick(Sender: TObject);
var
canv : TCanvas;
x, y : integer;
begin
 canv := Image1.Canvas;
 x := 1;
 while x < Image1.Width do
 begin
   y := 1;
   while y < Image1.Height do
     begin
       if IfInBorder(x, y, canv) then
         begin
           canv.Pixels[x-10,y-10] := 0;
         end;
       inc(y, step);
     end;
   inc(x, step);
 end
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
 DoubleBuffered := true;
end;

end.


 
Игорь Шевченко ©   (2006-04-27 22:34) [62]


> источник в студию...


Форумы сайта "Мастера Delphi", дружище...далеко ходить не надо.


 
GEN++ ©   (2006-04-27 22:50) [63]

>нас есть камера узкого угла обзора, есть самолёт-задача: нужно, чтобы >стойка, на которой находится камера сопровождала движение самолёта и >на экране самолёт занимал 2\3 экрана. Кто может помочь, готов оплатить >работу

Лет 20 назад на сборах видел фильм про Шведскую систему
управления корабельной зенитной артиллерией:
оператор на мониторе наводил перекрестье на самолет,
(изображение шло с видеокамеры) нажимал кнопку и
далее процессор обеспечивал автосопровождение поворачивая
видеокамеру за самолетом.
Самолет делал фигуры высшего пилотажа но перекрестье
на нем так и сидело. За камерой синхронно врашаллось
с десяток скрострельных зенитных пушек. Показывали
и боевую стрельбу по мишеням. Впечетляюще.
Так вот стоимость проекта была порядка 100 млн $
И делали его видимо несколько контор.

 А тут предлагают за 5000$ ???????


 
Gero ©   (2006-04-27 22:58) [64]

> Sergey Masloff   (27.04.06 21:57)


> Запретить надо бесплатников а платников учить на общих основаниях
> не сдал - в аут

Почему так? В двух словах хотя бы.
Если у человека не за что платить за учебу, но он хочет учиться, у него нет шансов?


 
Alx2 ©   (2006-04-27 23:12) [65]

>Gero ©   (27.04.06 22:58) [64]

>Если у человека не на что платить за учебу, но он хочет учиться,
>у него нет шансов?

Вопросом на вопрос: а разве деньги - не главное в жизни каждого? И разве учатся не ради денег? Пошлая поговорка "раз ты такой умный, почему не богатый?" не стала модной?
Такой человек может взять кредит на образование. И когда с помощью образования начнет приближаться к основной цели своего существования - к обладанию деньгами  - он возместит и кредит и проценты, помогая тем самым приблизиться к заветной цели своим кредиторам.

PS
Ирония (горькая).


 
Думкин ©   (2006-04-28 05:47) [66]

> Nic ©   (27.04.06 20:44) [55]

Извини, но это во многом из-за того что и ВУЗ у тебя - "массовый".


 
tsa   (2006-04-28 07:54) [67]


> [63] GEN++ ©   (27.04.06 22:50)

Железа на пушки больше, чем в этом случае :)


 
antonn ©   (2006-04-28 09:18) [68]

MVova ©   (27.04.06 21:13) [57]
Оптимизировано по скорости :)


>Result :=
>    (canv.Pixels[x,y] = col) and

хи-хи-хи...


 
Marser ©   (2006-04-28 10:15) [69]

> [66] Думкин ©   (28.04.06 05:47)
> > Nic ©   (27.04.06 20:44) [55]
>
> Извини, но это во многом из-за того что и ВУЗ у тебя - "массовый".

А в чем разница? Разве в КПИ по пять человек принимают?


 
Думкин ©   (2006-04-28 10:26) [70]

> Marser ©   (28.04.06 10:15) [69]

Я ждал вопрос. Но ответ чуть позже разверну. Можно?


 
MVova ©   (2006-04-28 10:28) [71]


>  [68] antonn ©   (28.04.06 09:18)
> MVova ©   (27.04.06 21:13) [57]
> Оптимизировано по скорости :)
>
> >Result :=
> >    (canv.Pixels[x,y] = col) and
>
> хи-хи-хи...

Смотрите глубже

step: byte = 5;

        end;
      inc(y, step);
    end;
  inc(x, step);
end


а после этого "хи-хи-хи..."


 
Marser ©   (2006-04-28 10:30) [72]

> [70] Думкин ©   (28.04.06 10:26)
> > Marser ©   (28.04.06 10:15) [69]
>
> Я ждал вопрос. Но ответ чуть позже разверну. Можно?

О.к.


 
Думкин ©   (2006-04-28 10:37) [73]

> Marser ©   (28.04.06 10:30) [72]

Но ты вначале скажи - КПИ - это с чем едят? Извиняюсь.


 
Marser ©   (2006-04-28 10:55) [74]

> [73] Думкин ©   (28.04.06 10:37)
> > Marser ©   (28.04.06 10:30) [72]
>
> Но ты вначале скажи - КПИ - это с чем едят? Извиняюсь.

Начнём издалека. Ты какие киевские ВУЗы знаешь?


 
Думкин ©   (2006-04-28 11:24) [75]

> Marser ©   (28.04.06 10:55) [74]

В детстве я читал квант. поэтом - .... Но ваш - в недавнем озвучивании - не в счет. дальше.


 
Marser ©   (2006-04-28 11:37) [76]

Удалено модератором


 
Думкин ©   (2006-04-28 11:42) [77]

Удалено модератором


 
Marser ©   (2006-04-28 12:01) [78]

Удалено модератором


 
antonn ©   (2006-04-28 12:51) [79]

MVova ©   (28.04.06 10:28) [71]
и все таки хи-хи-хи, потому как "оптимизировано по скорости" и canvas.Pixels[x,y] в циклах - вещи несовместимые...


 
antonn ©   (2006-04-28 12:52) [80]

veter   (26.04.06 10:49)
вообще, каким образом осуществляется управление камерой? снимки "на месте" дать можете?


 
Mvova ©   (2006-04-28 13:34) [81]


>  [79] antonn ©   (28.04.06 12:51)
> MVova ©   (28.04.06 10:28) [71]
> и все таки хи-хи-хи, потому как "оптимизировано по скорости"
> и canvas.Pixels[x,y] в циклах - вещи несовместимые...


Возможно :)


 
Nic ©   (2006-04-28 14:13) [82]


> Думкин ©  

Возможно. Не знаю, как дело обстоит в Москве, Питере, Новосибирске, но у нас набирают всех подряд. А потом не знают как их учить. У нас ещё ВУЗ крупнейший в городе и один из лидирующих в Поволжье.


 
Anatoly Podgoretsky ©   (2006-04-28 15:19) [83]

GEN++ ©   (27.04.06 22:50) [63]
Ну так они нам не конкуренты.



Страницы: 1 2 3 вся ветка

Форум: "Прочее";
Текущий архив: 2006.05.21;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.72 MB
Время: 0.017 c
6-1137578474
ronyn
2006-01-18 13:01
2006.05.21
местоположение компа


15-1146064395
gogi
2006-04-26 19:13
2006.05.21
Распространение исходников по лицензии


2-1146916420
mr1Andersen
2006-05-06 15:53
2006.05.21
Подскажите, пожалуйста, как лучше сделать:


3-1143788084
Alex_12345
2006-03-31 10:54
2006.05.21
JET 4.0 - правила использования....


1-1144763877
Рафик
2006-04-11 17:57
2006.05.21
Как мне в документ Word в колонтитул вставить текст





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский