Официальный сайт студ.городка НГТУ
Программирование и БД » [php] реализация растяжений-сжатий изображений 

#1  21.10.08 14:29

Igo
Профиль

[php] реализация растяжений-сжатий изображений

задача: имеется картинка размером не более 500px * 500px. Ее необходимо обработать таким образом  - показать лучше на примере.

http://hostel.nstu.ru/uploaded/gallery/ … 075698.jpg

Представте, исходная картика - это плоская фотографмя одного квадратика плитки. А мне наждо из него сделать такую картинку, как вы видете ее уже по ссылке - т.е. 3d искаженной, для дальнейшей подстановки в другие фотографии он лайн.

я тут вижу 2 варианта
1. Аффинные преобразования плоскостей - по сути картинка плоская, и нам просто нужно ее определенным образом растянуть, чтобы получить требуемую. Сам алгоритм нашел, но честно говоря не до конца его понял - как применить его оименно набору пикселов, а не математически заданной плоскости.

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

2. Использовать 3d движок - по сути, наш объект - это очень простой 3d объект состоящий из 16 полигонов. Наложим на его лицевую сторону картинку, и потом с помощью установок матриц вида, масштаба и перемещения рендеря объект мы получаем то что надо.

НО - тут свои проблемы. Во первых это все куда тормознее и жрет не мало памяти, потому как сам механизм достаточно сложный.Во вторых готовые 3d движки на php не поддерживают текстурирования - а без этого совсем все плохо. Да и качество у них будет явно хромать, ибо для качественного рендеринга надо много ресурсов - а у веб сервера чаще всего их не много. Да и слишком сложно тут все для решения данной задачи.

Собсвтенно вопрос -  может кто поделится инфой или реализацией первого метода, ну или может кто знает быстрый 3d движок на php который поддерживает текстурирование?

p.s. на вопрос "зачем это надо делать на php и т.д. " могу сразу ответить - надо, и в офлайне это делать не пойжет, будет использоваться при добавлении объекта в базу.

Offline

#2  21.10.08 15:16

Re: [php] реализация растяжений-сжатий изображений

есть плагины к GIMPу... они вроде на питоне писаны... думаю, перевести на пыху сможешь...

Offline

#3  22.10.08 16:16

Re: [php] реализация растяжений-сжатий изображений

Offline

#4  23.10.08 00:37

Igo
Профиль

Re: [php] реализация растяжений-сжатий изображений

A-Lex написал(а):

http://pear.php.net/package/Image_3D

Igo написал(а):

НО - тут свои проблемы. Во первых это все куда тормознее и жрет не мало памяти, потому как сам механизм достаточно сложный.Во вторых готовые 3d движки на php не поддерживают текстурирования - а без этого совсем все плохо. Да и качество у них будет явно хромать, ибо для качественного рендеринга надо много ресурсов - а у веб сервера чаще всего их не много.

Offline

#5  23.10.08 14:17

Re: [php] реализация растяжений-сжатий изображений

Просто попробавал запустить пару примеров. Машина вытянула нормально :)
А вообще мне кажется лучше поискать заточенные под это софтины, управляемые, например, через cli

Вот например ImageMagick, из API php не очень то удобно работать, зато если написать скрипт на баше и дёрнуть его тем же exec(), то вуаля, все идёт как по маслу :)

Offline

#6  23.10.08 16:09

Igo
Профиль

Re: [php] реализация растяжений-сжатий изображений

A-Lex, ну у меня просто PEAR модуль на локальной машине слабенькой модель из 9000 полигонов без тексткрирования 60 секунд рендерил - я понимаюу меня такчка слабая, но тем не менее, и памяти около 100 м схавала, а такое не на всех хостингах предоставляется.

A-Lex написал(а):

Вот например ImageMagick, из API php не очень то удобно работать, зато если написать скрипт на баше и дёрнуть его тем же exec(), то вуаля, все идёт как по маслу :)

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

а пока что ищу

Jaguar написал(а):

есть плагины к GIMPу...

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

Offline

#7  23.10.08 16:23

Re: [php] реализация растяжений-сжатий изображений

Igo, я так понял, что тебе может подойти этот скрипт

Offline

Программирование и БД » [php] реализация растяжений-сжатий изображений 

ФутЕр:)

© Hostel Web Group, 2002-2025.   Сообщить об ошибке

Сгенерировано за 0.036 сек.
Выполнено 14 запросов.