Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

dobrej jakości thumbnail

9 views
Skip to first unread message

Piotr Borowski

unread,
Oct 30, 2009, 5:47:09 AM10/30/09
to
witam

mam problem ze zmniejszaniem
wrzucam obrazki na serwer przy pomocy aplikacji w javie, a następnie
zmiejszam je przy pomocy gd2
najpierw korzystałem z gotowych rozwiązań, klient nie był zadowolony, więc
po wczytaniu się w manual
użyłem funkcji: >>> imagecopyresampled <<<
klient był dalej niezadowolony z jakości
zmieniłem więc wartość w aplikacji java, tak, że obrazki ładowane na serwer
są duuuuuże
klient dalej niezadowolony
dodałem więc trochę ostrości poprzez funkcję >>> imageconvolution <<<
i jak zgadujecie klient dalej nie jest zadowolony, co jeszcze mogę zrobić,
moja funkcja poniżej, a obrazki, które przekształcam to zdjęcia samochodów

function resizeThumbnail($sourceFilename, $destinationFilename, $newWidth,
$newHeight)
{
if (!file_exists($sourceFilename))
return false;
list($width, $height) = getimagesize($sourceFilename);
$w = $newWidth / $width;
$h = $newHeight / $height;
if ($w < $h)
{
$newHeight = $height * $w;
}
else
{
$newWidth = $width * $h;
}

$tn = imagecreatetruecolor($newWidth, $newHeight);
$image = imagecreatefromjpeg($sourceFilename);
imagecopyresampled($tn, $image, 0, 0, 0, 0, $newWidth, $newHeight, $width,
$height);

$spnMatrix = array( array(-1,-1,-1,),
array(-1,16,-1,),
array(-1,-1,-1));
$divisor = 8;
$offset = 0;
imageconvolution($tn, $spnMatrix, $divisor, $offset);

$quality = 85;
imagejpeg($tn, $destinationFilename, $quality);

return true;
}

NEO.pl / PHPEncoder.pl

unread,
Oct 30, 2009, 5:51:45 AM10/30/09
to
Piotr Borowski wrote on 2009-10-30 10:47:

> klient dalej niezadowolony
> dodałem więc trochę ostrości poprzez funkcję >>> imageconvolution <<<
> i jak zgadujecie klient dalej nie jest zadowolony, co jeszcze mogę
> zrobić,

Wyjasnic klientowi na czym polegaja techniczne problemy ze skalowaniem
obrazkow i dlaczego z duzego obrazka da sie miniature ale z miniatury
duzego odtworzyc juz nie do konca (pomijajac kretynizmy w serialach TV
typu CSI).

Pozdrawiam,
--
Szyfrowanie skryptow PHP v4 oraz v5. Blokady: czasowe, IP, MAC
Loadery dla systemow: Windows, Linux, MacOS, Free/BSD, Solaris
Zabezpiecz swoje skrypty PHP! Przetestuj http://phpencoder.pl

Robert Kusmierz

unread,
Oct 30, 2009, 7:09:38 AM10/30/09
to
W dniu 09-10-30 10:47, Piotr Borowski pisze:

Witam

> mam problem ze zmniejszaniem
> wrzucam obrazki na serwer przy pomocy aplikacji w javie, a następnie
> zmiejszam je przy pomocy gd2
> najpierw korzystałem z gotowych rozwiązań, klient nie był zadowolony,
> więc po wczytaniu się w manual
> użyłem funkcji: >>> imagecopyresampled <<<
> klient był dalej niezadowolony z jakości

Rozwiazania:
- upload miniaturki zrobic jako pliku - niech klient uploaduje to co sam
zrobi i bedzie zadowolony (on skaluje najlepiej)
- kadrowac + skalowac - wiecej zabawy, ale moze byc lepsza jakosc

Wyjasnic kre... klientowi, ze:
http://hardcore.soup.io/post/32179225/Image


--
Robert Kusmierz
www.robertkusmierz.com | Serwis prywatny

NEO.pl / PHPEncoder.pl

unread,
Oct 30, 2009, 7:38:27 AM10/30/09
to
Robert Kusmierz wrote on 2009-10-30 12:09:

> - upload miniaturki zrobic jako pliku - niech klient uploaduje to co sam
> zrobi i bedzie zadowolony (on skaluje najlepiej)

Dobry pomysl. Skoro umie lepiej - bedzie zachwycony :) A najlepiej dac
klientowi mozliwosc podmiany miniaturki na wlasnej roboty, bo 99,9%
ze po tygodniu mu sie znudzi i Twoje miniaturki juz beda ok.

Robert Kusmierz

unread,
Oct 30, 2009, 7:54:02 AM10/30/09
to
W dniu 09-10-30 12:38, NEO.pl / PHPEncoder.pl pisze:

>> - upload miniaturki zrobic jako pliku - niech klient uploaduje to co sam
>> zrobi i bedzie zadowolony (on skaluje najlepiej)
> Dobry pomysl. Skoro umie lepiej - bedzie zachwycony :) A najlepiej dac
> klientowi mozliwosc podmiany miniaturki na wlasnej roboty, bo 99,9%
> ze po tygodniu mu sie znudzi i Twoje miniaturki juz beda ok.

Testowalem na ludziach wiec wiem. Po jakims czasie - poprosze o automat
do tego, tego itp.

Wracajc do problemu:
- skalowanie (30%) + wyostrzanie
- skalowanie (30%) + wyostrzanie
- skalowanie (30%) + wyostrzanie
Czyli skalowanie w kilku krokach do wielkosci oczekiwanej + wyostrzanie
po skalowaniu moze dac dobre efekty. Nie wiem czy sie jednak
obliczeniowo to oplaca.

> --

Popraw, jak mozna --|__| ;)

NEO.pl / PHPEncoder.pl

unread,
Oct 30, 2009, 8:06:51 AM10/30/09
to
Robert Kusmierz wrote on 2009-10-30 12:54:
> W dniu 09-10-30 12:38, NEO.pl / PHPEncoder.pl pisze:
>>> - upload miniaturki zrobic jako pliku - niech klient uploaduje to co sam
>>> zrobi i bedzie zadowolony (on skaluje najlepiej)
>> Dobry pomysl. Skoro umie lepiej - bedzie zachwycony :) A najlepiej dac
>> klientowi mozliwosc podmiany miniaturki na wlasnej roboty, bo 99,9%
>> ze po tygodniu mu sie znudzi i Twoje miniaturki juz beda ok.
>
> Testowalem na ludziach wiec wiem. Po jakims czasie - poprosze o automat
> do tego, tego itp.

I dlatego napisalem "mozliwosc *podmiany* miniaturki"

Koteczek

unread,
Oct 30, 2009, 8:23:14 AM10/30/09
to
Piotr Borowski wrote:
> witam
>
> mam problem ze zmniejszaniem

w moim sklepie online obrazki miniaturek robie sam, odpowiedni soft na pecete i
maca jest w tysiacach, w tym uznany w branzy. Produktow mam 150 i oferta jest
stala, nie musze tego zautomatyzowac a jakosc mam idealna.

Miniaturka musi byc wykadrowana czasami, odpowiednia maska wyostrzajaca dobrana
nie przez durny algorytm ale moje oko, miniaturki wygladaja jak malina. W PHP
sie nie bawilem bo raz nie chcialo mi sie a drugi ze nie umialem :)
Tak wiec opcja ze niech sam sobie wgra jest dobra ale czy Ciebie zadowoli...

Moze klasa/program image magic jest lepszy? Na wielu hostingach jest do tego
dostep.

Piotr Borowski

unread,
Oct 30, 2009, 8:50:49 AM10/30/09
to
"Robert Kusmierz" <ro...@poczta.onet.pl> wrote in message
news:hcehhc$17o$1...@news.onet.pl...

>W dniu 09-10-30 10:47, Piotr Borowski pisze:
>> mam problem ze zmniejszaniem
>> wrzucam obrazki na serwer przy pomocy aplikacji w javie, a następnie
>> zmiejszam je przy pomocy gd2
>> najpierw korzystałem z gotowych rozwiązań, klient nie był zadowolony,
>> więc po wczytaniu się w manual
>> użyłem funkcji: >>> imagecopyresampled <<<
>> klient był dalej niezadowolony z jakości
> Rozwiazania:
> - upload miniaturki zrobic jako pliku - niech klient uploaduje to co sam
> zrobi i bedzie zadowolony (on skaluje najlepiej)
> - kadrowac + skalowac - wiecej zabawy, ale moze byc lepsza jakosc
mój klient ma swoich klientów, którzy wgrywaja swoje obrazki (samochodów) na
stronę klienta (coś jak http://www.autotrader.co.uk/ tylko, że strona nie
jest dla osób prywatnych a jedynie dla dużych dealerów)
no i klienci mojego klienta narzekają, a on przekazuje to mi

> Wyjasnic kre... klientowi, ze:
> http://hardcore.soup.io/post/32179225/Image

dzięki za link, to naprawdę dobre

Jacek Czapla

unread,
Nov 4, 2009, 6:53:39 AM11/4/09
to
Piotr Borowski pisze:
Kiedyś pisałem taki mały autokomis i po sprawdzeniu kilku popularnych
programów na WIn32 okazało, że GD robi najlepszą jakość a do tego
znacznie mniejsze wagowo miniatury (gd ok 2-3kB a jakieś windowsowe
przeglądarki 15-20kB).
Jak zdjęcie jest słabej jakości to miniatura wyjdzie jeszcze gorsza.

--
*Jacek Czapla* - jczapla -- asit.pl
WinConnect Server XP - Usługi terminalowe na na Win SBS, Win XP,
WinVista - www.ASIT.pl
CakeFan - http://www.cakephp.org.pl/

WRonX

unread,
Nov 5, 2009, 12:37:43 AM11/5/09
to
Piotr Borowski pisze:
[CUT]

> i jak zgadujecie klient dalej nie jest zadowolony, co jeszcze mogę
> zrobić, moja funkcja poniżej, a obrazki, które przekształcam to zdjęcia
> samochodów

phpThumb jeszcze mnie nigdy nie zawiodl, jakosc jest bardzo dobra.


Pozdrawiam.
--
[= WRonX =] [= WRonX@-CUT-WRonX.NET =] [= http://WRonX.NET =]
[= GCS/CC d->++ s+:- a- C++++$ U P>++ L+ !E W+++$ N++(+++) =]
[= !o-- K-? w++$ !O !M- !V-- PS+ PE !Y !PGP !t !5 X++ R++ =]
[= tv+ b+++ DI++ D+ G+ e+++ h--->---- r+++ y? =]

SyZer

unread,
Nov 5, 2009, 3:26:46 AM11/5/09
to

> Kiedyś pisałem taki mały autokomis i po sprawdzeniu kilku popularnych
> programów na WIn32 okazało, że GD robi najlepszą jakość a do tego
> znacznie mniejsze wagowo miniatury
potwierdzam GD jest jedna z najlepszych bibliotek

Andrzej Kmicic

unread,
Nov 5, 2009, 10:05:08 AM11/5/09
to
SyZer pisze:
>> Kiedy� pisa�em taki ma�y autokomis i po sprawdzeniu kilku popularnych
>> program�w na WIn32 okaza�o, �e GD robi najlepsz� jako�� a do tego

>> znacznie mniejsze wagowo miniatury
> potwierdzam GD jest jedna z najlepszych bibliotek

Jako�� miniatur zale�y od u�ytej metody interpolacji otoczenia punktu i
dobrania na tej podstawie najlepszego koloru. Nie wiem czy standardowa
metoda re samplingu w GD2 u�ywa filtracji Lanczos, przypuszczam ze nie
dlatego ze jest ona jednak du�o wolniejsza od innych metod. Za to efekt
jest chyba najlepszy.
Mo�e warto jak tak zale�y klientowi na jako�ci, poszuka� klasy z
filtracja lanczos w PHP lub biblioteki rozszerze� z u�yciem tej metody
?. Mo�e kt�ra� z metod resamplingu (ma ich kilka ale chyba lanczos nie
ma ale moze da siďż˝ zaimplementowac metodďż˝) projektu
Image_Toolbox.class.php da lepsze efekty, musisz sprawdziďż˝.
pozdr
AK

Dla Windows bym takowďż˝ bibliotekďż˝ rozszerzeďż˝ potrafiďż˝ napisaďż˝ niestety
do Linuksa nie mam narz�dzi i mo�liwo�ci.

0 new messages