0 / 0 / 0
Регистрация: 02.01.2011
Сообщений: 149
|
|
1 | |
Изменение изображения загруженного в IPictureDisp18.08.2011, 23:31. Показов 2245. Ответов 5
Метки нет (Все метки)
Например у меня есть картинка, загруженная в переменную TempPicture, типа IPictureDisp. Мне нужно удалить лишний фон. У меня есть алгоритм, а вот как получить доступ к массиву пикселей - вопрос. Может как-то возможно преобразовать это в вид DIB, а там вроде есть Bits(0,0,0) as Byte. Возможно как-то можно скопировать это все из оперативки, но необходимо знать, как представляются там данные.
0
|
18.08.2011, 23:31 | |
Ответы с готовыми решениями:
5
Извлечение загруженного изображения Свойства загруженного изображения Обновление изображения, загруженного в БД Не выводит размеры загруженного изображения |
Comanche
|
||||||
19.08.2011, 19:07 | 2 | |||||
>> Мне нужно удалить лишний фон
Главное - что под этим подразумевается. Если просто 'взять пиксель - проанализировать его цвет - изменить цвет при необходимости', то проще всего загнать IPictureDisp в обычный пикчербокс (невидимый, если мешает), и далее поработать с Point и PSet. Т.е. типа такого:
А так можно ещё попробовать поковырять GetDIBits и SetDIBitsToDevice, или слазить на VbAccelerator.Com (там было что-то по работе с битмапами), или вообще найти реализацию алгоритмов 'noise reduction'... |
0 / 0 / 0
Регистрация: 02.01.2011
Сообщений: 149
|
|
19.08.2011, 19:31 [ТС] | 3 |
Этот способ не катит по следующим причинам:
1)Он слишком долгий 2)Если PictureBox меньше рисунка, то рисунок обрежется 3)И вообще это как-то неправильно.
0
|
Comanche
|
|
19.08.2011, 23:32 | 4 |
Согласен - я же написал, что это сойдёт лишь для маленьких картинок.
Можно ещё сложить с битмапом-маской при помощи BitBlt - уж это точно быстро будет. |
0 / 0 / 0
Регистрация: 02.01.2011
Сообщений: 149
|
|
19.08.2011, 23:38 [ТС] | 5 |
Спасибо за ответы. Я нашел решение GetDIBits. Эта функция преобразует из hdc объекта в вид DIB. А уже получение из IPictureDisp hDC - это уже дело техники.
Еще спасибо.
0
|
1 / 1 / 0
Регистрация: 18.11.2010
Сообщений: 139
|
|
22.08.2011, 12:30 | 6 |
Насчёт
> Если PictureBox меньше рисунка, то рисунок обрежется -В PictureBox`e есть свойство AutoSize (Установка по размерам картинки)
0
|
22.08.2011, 12:30 | |
22.08.2011, 12:30 | |
Помогаю со студенческими работами здесь
6
Сохранение изображения, загруженного из файла Рисунок поверх загруженного изображения Отображение изображения загруженного с сервера Авторазмер изображения, загруженного в Image Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |