큰 이미지를 작은 이미지로 변환하여 이미지 크기를 조정하려면 PIL을 사용하고 있습니다. 품질을 너무 많이 잃지 않고 이미지의 파일 크기를 줄이기위한 표준 방법이 있습니까? 이미지의 원래 크기가 100KB라고 말하면서 5ng 또는 10KB, 특히 png 및 jpeg 형식을 얻으려고합니다.PIL을 사용하여 이미지 파일 크기를 줄이는 방법
답변
PIL의 이미지 모듈의 thumbnail 기능을 참조하십시오. 이 파일을 사용하여 더 작은 버전의 파일을 다양한 파일 형식으로 저장할 수 있으며 가능한 한 많은 품질을 유지하려는 경우 ANTIALIAS
필터를 사용해보십시오.
그 외에도 원하는 최대 크기를 지정하는 방법이 있는지 확실하지 않습니다. 물론, 특정 크기가 될 때까지 다양한 품질로 파일의 여러 버전을 저장하고, 나머지를 버리고 원하는 이미지를 제공하는 기능을 작성할 수 있습니다.
은 치수를 일정하게 유지하여 파일 크기를 줄이는 방법입니다. png 형식의 경우. –
동일한 치수를 유지하려는 경우 이미지를 저장할 때 품질 설정을 지정하면됩니다. 체크 아웃 [답변] (http://stackoverflow.com/a/1405701/369878) – Cryptite
하지만 품질 속성 png formats.even 나는 파일 크기가 동일하게 유지 품질을 변경하지 않습니다. –
JPEG 및 PNG 저장을위한 기본 제공 매개 변수는 optimize
입니다.
# My image is a 200x374 jpeg that is 102kb large
>>> foo = Image.open("path\\to\\image.jpg")
>>> foo.size
(200,374)
# I downsize the image with an ANTIALIAS filter (gives the highest quality)
>>> foo = foo.resize((160,300),Image.ANTIALIAS)
>>> foo.save("path\\to\\save\\image_scaled.jpg",quality=95)
# The saved downsized image size is 24.8kb
>>> foo.save("path\\to\\save\\image_scaled_opt.jpg",optimize=True,quality=95)
# The saved downsized image size is 22.9kb
optimize
플래그는 최대한의 크기를 줄일 수있는 방법을 찾기 위해 이미지에 추가 패스를 할 것입니다. 1.9kb는별로 좋아 보이지 않을 수도 있지만, 수백/수천 장의 그림 위에는 더할 수 있습니다.
이제 5kb에서 10kb까지 내려 받으려면 저장 옵션에서 품질 값을 변경할 수 있습니다. 얻을 것이이 경우에 85 대신 95의 품질을 사용 : 최적화되지 않은 : 최적화 된 15.1kb : 14.3kb (인수가 알아두면 기본값) 얻을 것이다 (75)의 품질을 사용 : 최적화되지 않은 : 최적화 된 11.8kb : 11.2kb
품질에 많은 영향을 미치지 않으며 파일 크기가 훨씬 작기 때문에 나는 최적화 된 품질 85를 선호합니다.
from PIL import Image
b = Book.objects.get(title='Into the wild')
image = Image.open(b.cover_pic.path)
image.save(b.image.path,quality=20,optimize=True)
그것을 보았 지 누군가에게 도움이되기를 바랍니다 :
당신이이 경우에 필드가 'cover_pic'라는 책과 호출 모델, 이 있다고 할 수 있습니다, 당신은 이미지를 압축하기 위해 다음을 수행 할 수 있습니다 올라가서.
- 1. , 이미지 크기를 줄이는 방법?
- 2. 자바에서 이미지 파일 크기를 줄이는 방법
- 3. 원본 파일이 너무 크면 이미지 파일 크기를 줄이는 방법
- 4. 대물 렌즈 c에서 이미지 크기를 줄이는 방법
- 5. 이미지를로드 할 때 이미지 크기를 줄이는 방법
- 6. 이미지 크기를 줄이는 방법은 무엇입니까?
- 7. GWT 전쟁 파일 크기를 줄이는 방법
- 8. IOS에서 오디오 파일 크기를 줄이는 방법
- 9. (crystal reports) RPT 파일 크기를 줄이는 방법
- 10. WP7 이미지의 크기를 줄이는 방법
- 11. py2exe를 사용하여 exe의 크기를 줄이는 방법
- 12. 파일 크기를 줄이는 모범 사례?
- 13. PIL을 사용하여 회전 EXIF 정보의 크기를 조정하고 파일에 적용하는 방법?
- 14. UIImage 크기를 최대한 줄이는 방법
- 15. SVG 이미지의 이미지 크기를 줄이는 방법은 무엇입니까?
- 16. Cocos 2D 이미지 크기를 줄이는 방법은 무엇입니까?
- 17. JQuery datepicker의 크기를 줄이는 방법
- 18. Github의 레포 크기를 줄이는 방법
- 19. 응용 프로그램 크기를 줄이는 방법
- 20. 스웨터에서 이미지 크기를 줄이는 방법은 무엇입니까?
- 21. iOS : 큰 PNG 파일의 크기를 줄이는 방법
- 22. PIL을 사용하여 삼각형 이미지 영역 복사
- 23. PIL을 사용하여 Tkinter Canvas widget에 이미지 삽입하기
- 24. 플렉스 앤 빌드 - swf 파일 크기를 줄이는 방법
- 25. 부두에서 서버 로그 크기를 줄이는 방법
- 26. 내 응용 프로그램 크기를 줄이는 방법
- 27. python/PIL을 사용하는 이미지 개요
- 28. Load 문에서 Sybase Anywhere 11의 로그 파일 크기를 줄이는 방법
- 29. MS SQL 데이터베이스 백업 파일 크기를 줄이는 방법
- 30. PHP로 이미지 파일 크기를 줄일 수 있습니까?
당신은 "너무 많은"품질 손실로 정의합니까? 파일 크기를 10-20 배로 줄이려면 가장 쉬운 방법은 픽셀 수를 줄이는 것입니다. 폭과 높이를 2/3로 줄이면 원래 크기의 약 1/9 크기의 그림을 얻을 수 있습니다. 그러나 그것은 여러분이 느슨한 해결책입니다. –