![]() |
Модераторы: Partizan, gambit |
![]() ![]() ![]() |
|
Хоббит |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1263 Регистрация: 6.11.2005 Репутация: нет Всего: 1 |
При попиксельном анализе рисунка, загруженного в BitMap тратиться много времени на функции GepPixel и SetPixel ... можно ли как нибудь считать картинку в массив целых чисел (или в 3 массива R G B составляющих) а потом загрузить обратно.
|
|||
|
||||
ivashkanet |
|
|||
![]() Кодю потиху ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3684 Регистрация: 23.2.2006 Где: Гомель, Беларусь Репутация: 47 Всего: 149 |
Ты считаешь с конвертированием будет быстрее?
![]()
P.S. там еще есть PixelColor.A, какая-то альфа ![]() Добавлено @ 08:43 MSDN предлагает именно так делать ![]() Это сообщение отредактировал(а) ivashkanet - 11.5.2006, 08:42 |
|||
|
||||
VisualProgrammerNET |
|
|||
![]() Почётный халявщик ![]() ![]() Профиль Группа: Участник Сообщений: 461 Регистрация: 30.10.2005 Где: Зеленоград Репутация: 4 Всего: 6 |
Коэффициент прозрачности. Попробуй считывать битмап в несколько потоков. Хотя не уверен, что прирост в производительности будет... если вообще будет! ![]() -------------------- 3 ГОДА НА ![]() |
|||
|
||||
mr.DUDA |
|
|||
![]() 3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 110 Всего: 232 |
Картинку можно залочить в IntPtr, откуда скопировать в байтовый массив и работать с ним напрямую. Это будет в несколько раз быстрее, чем GetPixel / SetPixel. Но при этом нужно знать, в каком байте что лежит. Простой пример операций над битмапом в памяти:
-------------------- ![]() |
|||
|
||||
Хоббит |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1263 Регистрация: 6.11.2005 Репутация: нет Всего: 1 |
... а парамет PixelFormat можно преобраховывать.... то есть из jpg получить bmp ... или из bmp 32 разрядного 24 разрядный
|
|||
|
||||
mr.DUDA |
|
|||
![]() 3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 110 Всего: 232 |
можно вроде
-------------------- ![]() |
|||
|
||||
Хоббит |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1263 Регистрация: 6.11.2005 Репутация: нет Всего: 1 |
работает .. раз в 5 быстрее .... Но почему ты написал цвета в порядке BGRA ... в MSDN примере .... первый цвет по любому красный !!!
|
|||
|
||||
mr.DUDA |
|
|||
![]() 3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 110 Всего: 232 |
полюбому, в отладчике именно так ![]() -------------------- ![]() |
|||
|
||||
Хоббит |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1263 Регистрация: 6.11.2005 Репутация: нет Всего: 1 |
.... ага ... теперь заметил
![]() |
|||
|
||||
mr.DUDA |
|
|||
![]() 3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 110 Всего: 232 |
Дело в порядке байтов в двойном слове: сначала идут младшие, потом старшие. Если в ARGB самый старший - А, то и идёт он в четвёрке байт последним.
-------------------- ![]() |
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |