|
|
|
технология обработки изображений
|
|||
|---|---|---|---|
|
#18+
Всем доброго дня. Только что столкнулся с небольшим ответвлением в своей прграмме в котором из за не знания не могу сделать выбор. Дело в том что я пишу программное обеспечения для лаборатории по анализу и обработке спутниковых данных. Вывод изображения я писал с помощью WinApi. Но. появилось новое задание - нарисовать трехмерную гистограмму матрицы смежности. Вот тут то я и затупил...-на чем сделать: так же продолжать на winapi или использовать opengl И если использовать opengl то на сколько по эффективности я выиграю если переделаю вывод самого изоражения, все фильтры по анализу и обработке под open gl? Жду ваших мнений... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2009, 18:48:36 |
|
||
|
технология обработки изображений
|
|||
|---|---|---|---|
|
#18+
2 Adeon: AdeonВывод изображения я писал с помощью WinApi. Вы имеете в виду GDI? (функции рисования, принимающие HDC) AdeonНо. появилось новое задание - нарисовать трехмерную гистограмму матрицы смежности. Трёхмерная гистограмма -- это как на приложенной картинке или что-то другое? Матрица смежности -- это матрица смежности графа? (в которой нули и единицы) AdeonВот тут то я и затупил...-на чем сделать: так же продолжать на winapi или использовать opengl Если надо делать 3D-графику, то OpenGL гораздо удобнее, чем GDI. Единственная тонкость -- рисование текста, в OpenGL нет функций вроде glDrawText. Рисовать текст скорее всего придётся с помощью GDI, передавая полученный растр в OpenGL. AdeonИ если использовать opengl то на сколько по эффективности я выиграю если переделаю вывод самого изоражения, все фильтры по анализу и обработке под open gl? Реализации OpenGL быстро рисуют треугольники/четырёхугольники (возможно, текстурированные), отрезки прямых и точки. Если Вам это надо, то OpenGL-рисование будет быстрее, чем GDI-рисование. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.05.2009, 01:47:02 |
|
||
|
технология обработки изображений
|
|||
|---|---|---|---|
|
#18+
Пётр Седов Вы имеете в виду GDI? (функции рисования, принимающие HDC) Да, простите, я имел ввиду именно это. Пётр Седов Реализации OpenGL быстро рисуют треугольники/четырёхугольники (возможно, текстурированные), отрезки прямых и точки. Если Вам это надо, то OpenGL-рисование будет быстрее, чем GDI-рисование. Нет, я имел ввиду вывод растровых данных... На сколько Opengl быстрее в этом плане GDI? Пётр Седов Трёхмерная гистограмма -- это как на приложенной картинке или что-то другое? Матрица смежности -- это матрица смежности графа? (в которой нули и единицы) Нет, это матрица смежности яркостей изображения. Картинка почти совпадает с тем что я хотел=) Пётр СедовВот тут то я и затупил...-на чем сделать: так же продолжать на winapi или использовать opengl Если надо делать 3D-графику, то OpenGL гораздо удобнее, чем GDI. Единственная тонкость -- рисование текста, в OpenGL нет функций вроде glDrawText. Рисовать текст скорее всего придётся с помощью GDI, передавая полученный растр в OpenGL. А вот за это огромное спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.05.2009, 06:03:00 |
|
||
|
технология обработки изображений
|
|||
|---|---|---|---|
|
#18+
Adeon...задание - нарисовать трехмерную гистограмму матрицы смежности. Вот тут то я и затупил...-на чем сделать: так же продолжать на winapi или использовать opengl И если использовать opengl то на сколько по эффективности я выиграю... Я-бы нарисовал простенький контрол на WinApi, который рисует в изометрической проекции данные из матрицы. Если заказчика это не устроит и он потребует вращения со светом, тенями и прочей хренотенью, тогда можно и подумать. Только учтите, что опция OpenGL сильно ударит по стоимости проекта. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.05.2009, 10:19:09 |
|
||
|
технология обработки изображений
|
|||
|---|---|---|---|
|
#18+
2 Adeon: AdeonПётр Седов Вы имеете в виду GDI? (функции рисования, принимающие HDC) Да, простите, я имел ввиду именно это. Вам незачем извиняться :), GDI -- подмножество WinAPI. Я просто уточнил, о чём идёт речь. AdeonПётр Седов Реализации OpenGL быстро рисуют треугольники/четырёхугольники (возможно, текстурированные), отрезки прямых и точки. Если Вам это надо, то OpenGL-рисование будет быстрее, чем GDI-рисование. Нет, я имел ввиду вывод растровых данных... На сколько Opengl быстрее в этом плане GDI? Если надо рисовать растр без масштабирования/поворота, то я бы просто использовал WinAPI-шную функцию SetDIBitsToDevice. В OpenGL для рисования растра есть функция glDrawPixels, но она работает медленно в некоторых реализациях, поэтому для гарантированно-быстрого рисования придётся возиться с текстурами (загонять растр в текстуру и рисовать текстурированный четырёхугольник). Будет ли такой подход быстрее? Не знаю, надо мерять. А вот памяти потребуется больше (OpenGL-контекст, back buffer, текстуры). Кстати, некоторые реализации OpenGL «не любят», когда содержимое текстуры часто меняется (см. функцию glTex Sub Image2D). 2 mayton: maytonТолько учтите, что опция OpenGL сильно ударит по стоимости проекта. Почему? OpenGL бесплатный. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2009, 04:37:29 |
|
||
|
технология обработки изображений
|
|||
|---|---|---|---|
|
#18+
Пётр СедовOpenGL бесплатный. Поясню. В сыром виде библиотека OpenGL не годиться для хорошего слияния с MFC. Мне всегда приходилось строить вокруг неё какие-то ООП-надстройки и т.п. Кроме того в данной постановке, использование OpenGL для рисования нескольких столбиков диаграмм напоминает "выстрел" из хорошей пушки по "маленькой птичке". Ведь MSExcel рисует 3D-диаграммы не обращаясь к OpenGL. Пускай автор сам решит, стоит ли из за такого пустяка подключать довольно мощную технологию? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2009, 10:04:39 |
|
||
|
технология обработки изображений
|
|||
|---|---|---|---|
|
#18+
2 mayton: maytonВ сыром виде библиотека OpenGL не годиться для хорошего слияния с MFC. Разве? По-моему, использовать OpenGL в MFC-программе -- просто: берём CWnd::m_hWnd, делаем обычную инициализацию OpenGL, рисуем в CMyView::OnPaint. maytonМне всегда приходилось строить вокруг неё какие-то ООП-надстройки и т.п. Зачем? Вы делали аналог Qt-шного QGLWidget ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2009, 03:28:00 |
|
||
|
технология обработки изображений
|
|||
|---|---|---|---|
|
#18+
Верно. Но я и мои приятели, в универе, когда делали курсовые на тему OpenGL, как-то не сговариваясь начали строить свои собственные wrappers для камеры, объектов мира и т.п. Наверное для этого были какие-то соображения. Впрочем это отдельная тема. По поводу Qt к сожалению ничего сказать не могу т.к. мало знаком с этим продуктом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2009, 10:25:48 |
|
||
|
технология обработки изображений
|
|||
|---|---|---|---|
|
#18+
maytonВерно. Но я и мои приятели, в универе, когда делали курсовые на тему OpenGL, как-то не сговариваясь начали строить свои собственные wrappers для камеры, объектов мира и т.п. Наверное для этого были какие-то соображения. Впрочем это отдельная тема. По поводу Qt к сожалению ничего сказать не могу т.к. мало знаком с этим продуктом. конечно QT это хорошая библиотека. но программа изначально была написанна на mfc. А получить мне нужно диаграмму....правда не совсем это диаграмма. общем посмотрите пожадуйста в файлике который я прикрепил. и еще а можно это дело вывести с помощью opengl в mfc? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2009, 18:16:24 |
|
||
|
технология обработки изображений
|
|||
|---|---|---|---|
|
#18+
Её можно получить в MFC даже без OpenGL. Хотя... если тебе так хочется задействовать все кнопки сразу... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2009, 18:22:15 |
|
||
|
технология обработки изображений
|
|||
|---|---|---|---|
|
#18+
2 Adeon: AdeonА получить мне нужно диаграмму....правда не совсем это диаграмма. общем посмотрите пожадуйста в файлике который я прикрепил. По-моему, какая-то странная картинка. Больше похоже на современное искусство, чем на научно-инженерную графику (без иронии). Adeonи еще а можно это дело вывести с помощью opengl в mfc? OpenGL позволяет быстро рисовать точки, отрезки, треугольники и четырёхугольники. Как с помощью этих примитивов нарисовать такую картинку -- ума не приложу. У Вас есть какая-нибудь более внятная картинка? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2009, 01:34:24 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=35973297&tid=1344480]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
304ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
| others: | 227ms |
| total: | 616ms |

| 0 / 0 |
