Cмена специализации

Господа, такой вопрос.

Глубоко застрял в php + mysql +javascript. Но очень хочется на с/с++ смениться. Исключительно по меркантильным соображениям. Но вместе с тем я прекрасно понимаю, что максимум что мне светит — это позиция джуниорая с зп в 3 раза меньше текущей. Что при наличии семьи мне увы не приемлимо.

Как думаете есть варианты как безболезненно совершить такой кульбит или нет?

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

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
> А смысл в такой сложности? Я год назад игрался с wrong way детекторами, которые всего-лишь в несколько раз сложнее сенсора лазерной мышки, но принцип банально схож...
> А чем классическая связка микроволнового и ультразвукового радаров не устраивает? Для обеспечения безопасности движения их хватает, а всё остальное за пределами life critical...

может устраивает, может нет. Это скорее ворпосы стратегического плана чем технологического. Как правило делают то что умеют либо изучают новое если выгодно...


На анализ кадра (линия конвеерной сборка автомобилей) отведено 40 mSec
В автомобильный устройствах по обеспечению безопасности движения анализ кадра ~17 mSec.
В ситуации когда водитель уснул и пересек разделительную полосу задержка анализа на 1 сек ведет к вылету с трассы > смерти водителя

А смысл в такой сложности? Я год назад игрался с wrong way детекторами, которые всего-лишь в несколько раз сложнее сенсора лазерной мышки, но принцип банально схож...

За 17 mSec нужно составить спектр, восстановить гамму (день/ночь, солнечно / пасмурно), распознать положение ключевых объектов их динамику движения... + десяток мелких задач...

А чем классическая связка микроволнового и ультразвукового радаров не устраивает? Для обеспечения безопасности движения их хватает, а всё остальное за пределами life critical...

Скажем, ПАЛ с соответствующей платой ввода изображения

Могу ошибаться, но с очень больше долей вероятность, на этой плате может стоять ПЛИС, под которую нужно писать на VHDL.Т. е. то что вам так легко с ней работать, это заслуга не С/С++, а человека который написал прошивку на VHDL для вашей платы.

2maxdz

А на общих трассах (где ездят водители-люди) — управляющий реалтайм появится ещё очень нескоро.

В Инфинити есть фича что при наезде на полосу разделителя она начинает притормаживать колесами что бы вывести машину на полосу трасы, еще есть детектирование опасности при случае обгона...

вы случайно не это имели ввиду?

Да, самый первый этап — это сведение алгоритмов обработки и отладка на С++.
Это 20% работы, самая легкая часть. После чего следует 80% переноса кода на VHDL.
Никакой оптимизацией инструкций тут не обойтись, за время рендеринга кадра на PC можно выйти покурить.
В FPGA происходит обработка 60 кадров в секунду всех фильтров/ступеней алгоритма.
Конечно есть смещение в 2...3 кадра по времени, однако анализ кадра длится ~17 mSec
Процессору для анализа цветности одного пикселя требуется как минимум несколько
инструкций плюс обращение к памяти. FPGA за за такт обрабатывает сотни пикселей

плюс параллельно фоновые кадры

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

А на общих трассах (где ездят водители-люди) — управляющий реалтайм появится ещё очень нескоро.

Мощность процессора в системах визуального распознавания образов — дело десятое, от 100 Mhz FPGA толку больше чем от «современного» Dual Core так как главным критерием является параллельность вычислений. Пошаговая обработка пикселей пусть даже сверх-мощным четырех-ядерным процессором — занятие для людей с железными нервами

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

> В автомобильный устройствах по обеспечению безопасности движения анализ кадра ~17 mSec.
С распознаванием картинки в автомотиве я не работал -, но могу представить, что алгоритмы пишутся и тестируются на плюсах (как самое обиходное средство, к тому же с кучей готовых библиотек в исходниках), а затем уже оптимизируются до требуемых цифр быстродействия. Иногда хватает ассемблера -, а иногда и аппаратная реализация может потребоваться.
Впрочем, на конвейерах редко нужны хитрые системы анализа — обычно, идёт сравнение картинки с неким шаблоном (набором шаблонов), с использованием некого порогового значения ошибки — тут и комп справляется.

А уже автомобильный реалтайм — скорее всего, следует ориентировать на соотвествие скорости реакции человека (т.е. не медленнее, но и не стараться сделать намного быстрее, если это сильно удорожает систему).

При всем желании применить С++ ничего не вышло.

Статический анализ картинки пользовался спросом в 2000...2006 годах

На анализ кадра (линия конвеерной сборка автомобилей) отведено 40 mSec
В автомобильный устройствах по обеспечению безопасности движения анализ кадра ~17 mSec.
В ситуации когда водитель уснул и пересек разделительную полосу задержка анализа на 1 сек ведет к вылету с трассы > смерти водителя
За 17 mSec нужно составить спектр, восстановить гамму (день/ночь, солнечно / пасмурно), распознать положение ключевых объектов их динамику движения... + десяток мелких задач...
Это актуальные задачи для разработчиков на данный момент времени. Через 3 года они станут еще сложнее...

пс. «танкист» -ом стану когда заработаю на личный танк:)

> maxdz, вы этим в Украине занимаетесь/занимались?
> в немецких НИИ вам цены не будет! в том же ин-те Планка
Я этим занимался некоторое время в Украине (в середине 90-х) -, но выделенное бюджетное финансирование (на полуавтоматический комплекс кариотипирования, в связи с чернобыльской тематикой) было доедено, простая, но более менее работающая система доделана, комплексы с софтом расставлены в десятке лабораторий по Украине и тема была закрыта.

В Германии тоже занимался и сейчас, в микроскопии, иногда занимаюсь. Но на универы не работаю, т.к. платят мало.:)

maxdz, вы этим в Украине занимаетесь/занимались?
очень необычная/занимательная предметная область

в немецких НИИ вам цены не будет! в том же ин-те Планка

Прикол даже в том, что такие, не требующие особого реалтайма автоматизированные/полуавтоматизированные решения, в которых участвует и обработка/распознавание картинки — зачастую, пишутся на шарпе или Джава (пользовательский интерфейс + некоторая управляющая логика) и лишь сама работа с картинкой аутсорсится в C++ код, который выполняется «нативно».

> На старте пробывали на С делать обработку обычнного PAL (даже не High Definition) — облом

И что у вас не сложилось? Скажем, ПАЛ с соответствующей платой ввода изображения — достаточно обыденный вариант для микроскопии. И, к примеру, та же «автоматизация предметного столика микроскопа» (с поиском «областей интересов» — включающей подвижкy, смену объективов, автофокусировку и распознавание) вполне работает на компе с виндой. Да и особого реал-тайма там не надо — даже если пользователь в наличии, пяток секунд может подождать.

никакого заблуждения нет, есть только реальные примеры из жизни
мои знакомые такими вещами занимаются в Европе
maxdz тебе все расписал. кстати, знакомый говорил что для его задач хватает чистого С, без плюсов
что конкретно там они делают не знаю, но что-то там для железяк+обработка видео
и заметь, я ни слова не говорил о реал-тайме!

так что смени ник на «танкист» )) (шутка)

Вот, другой разговор!
Насчет «мягкого реалтайма» согласен, даже слишком мягкого.

На старте пробывали на С делать обработку обычнного PAL (даже не High Definition) — облом, Task Imposible...: (

> Стройбатовец, это кто же в танке, по твоему нику судя? ^__^
Прочитай мой пост выше, я описал в чем заблуждаются те кто собрался на С заниматься Image Processing-ом,

могу подробней, только код высылать не буду. я не справочное бюро:)

> Современные компьютеры не используются в индустриальных процессаx
В индустриальных процессах нынче используются не только современные компы, но ещё и обычная винда. Лишь в очень малом круге задач (обработка/распознавание изображений к ним, как правило, не относится), где требуется «жёсткий реалтайм» — используются всякие реалтаймовые решения (специфическая аппаратная часть со специфическими операционками или даже без них).

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

> При нынешних мощностях компов — нет большого смысла зашивать алгоритмы обработки/распознавания в аппаратную часть или, тем более, делать аппаратную реализацию. Для подавляющего большинства задач хватает и обычного современного компа (и софта на C++).
Не совсем так,
1) Мощность процессора в системах визуального распознавания образов — дело десятое, от 100 Mhz FPGA толку больше чем от «современного» Dual Core так как главным критерием является параллельность вычислений. Пошаговая обработка пикселей пусть даже сверх-мощным четырех-ядерным процессором — занятие для людей с железными нервами.

2) Современные компьютеры не используются в индустриальных процессах (украина исключение). Это связано со стандартизацией производственных процессов. Кроме того есть ситуации с более суровыми требованиями к железу — automotive / military...

При нынешних мощностях компов — нет большого смысла зашивать алгоритмы обработки/распознавания в аппаратную часть или, тем более, делать аппаратную реализацию

Это +1, а ведь рост потенций железа еще далек от остановки

Для тех кто в танке

Стройбатовец, это кто же в танке, по твоему нику судя? ^__^

> вброс уныл про PhotoShop и VHDL без С

а аргументировать слабо?

> Real-Time Image Processing — актуально

При нынешних мощностях компов — нет большого смысла зашивать алгоритмы обработки/распознавания в аппаратную часть или, тем более, делать аппаратную реализацию. Для подавляющего большинства задач хватает и обычного современного компа (и софта на C++).

> Кхм. А GIMP на чем написан, не подскажете?
Для тех кто в танке: Real-Time Image Processing это одна категория програмных продуктов, и прочие — PhotoShop Gimp... — это вторая категория.
Real-Time Image Processing — актуально,

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

вброс уныл про PhotoShop и VHDL без С

выключай свой вентилятор!

Image processing на С это садо-мазо... VHDL — да, но С без шансов

Кхм. А GIMP на чем написан, не подскажете?

> В смысле, китайцы производят свои продукты? Возможно, конечно -, но зарплаты там...
В Китае происходит мощное развитие машиностроительной индустрии.

Зарплаты на достаточно хорошем уровне. Знание английского обязательно, испанский / немецкий — солидный бонус к базовой ставке...

Протестую!

Image processing на С это садо-мазо... VHDL — да, но С без шансов (за исключением редких случаев, например создать конкурента PhotoShop)

если так хочется С, то можно заняться Image procesing или DSP (digital signal procesing)

очень востребовано в Германии и Голландии, да и поинтересней чем формочки клепать, правда и сложнее — нужно шарить в математике

> В идеале хочу подальше из этой страны, но опять же пых для этих целей не подходит.
Ну это вы зря так, я вот с пыхой уехал и отлично себя чувствую.

Хотя скорее ухала не как пхпешник, а как программист который пишет на пхп.

> C++ наиболее востребован в китае.

В смысле, китайцы производят свои продукты? Возможно, конечно -, но зарплаты там...

В данный момент времени даже крупным компаниям с раб. персоналом > 100 тяжело зацепиться.
Языки программирования — это прежде всего инструменты необходимые для достижения конкретной цели.
Национальное хобби украинцев — создание заготовок для более продвинутых товарищей из зарубежных стран,

соответственно в большом почете JAVA и PHP. C++ наиболее востребован в китае.

> Ещё сервер-сайд бек-енд бывает.

Это очень редко. Какие-нибудь cgi-скрипты, socket-listener -, но это каменный век, даже по сравнению с пхп. А бизнес логику сервера, думаю, сейчас тоже на шарпе пишут (если пользуют майкрософт).

C/C++ — это, либо клиент (десктоп или мобильный), либо эмбед.

Ещё сервер-сайд бек-енд бывает.

Друг мой работал в компании занимающейся веб-разработкой. Пишет сейчас какую-то онлайн игрушку. Сначала был ПХП-шником, потом что-то у них там было с производительностью на стороне сервра и решили дописать что-то сначала на C, в следующем проекте на плюсах. Так за пару лет превратился в С++ ника вместо ПХПшника.

я то прекрасно понимаю, что паралельно надо. долго листал опенсорс проекты., но реально надо какой-то зацеп пока не получается.

Резко менять ИМХО не стоит.
С++ окупается в аппаратных разработках и то не всегда.
Самое лучшее — изучать С++ и параллельно заниматься тем что умеешь.

Дорогу осилит идущий.

> потому, что последние 4 года я виндоус видел только иногда на компьютерах коллег.

C/C++ — это, либо клиент (десктоп или мобильный), либо эмбед. Десктоп клиент — это в 99% случаев Винда (особенно, если речь идёт о платежеспособном клиенте).

ну наверное потому, что последние 4 года я виндоус видел только иногда на компьютерах коллег.

посему си++ примерно относительно платформо-независимый, а си-решектка очень жестко привязан к винде

А почему бы вам не попробовать C#? Переход будет проще и быстрее, чем на C/C++. Как у вас с C#-вакансиями в вашем городе?

Підписатись на коментарі