pillow의 crop 함수를 알아보겠습니다. crop 함수는 4개의 정수로 이루어진 box 정보를 넘깁니다. 각각 제일 왼쪽, 제일 위, 제일 오른쪽, 제일 아래의 좌표를 넘깁니다. 이렇게 이루어진 직사각형으로 이미지를 잘라버립니다. 알기 쉽게 그림을 하나 그려보도록 하겠습니다. 사진에서 (0, 0)은 맨 왼쪽 위 좌표를 가리킵니다. 오른쪽으로 갈수록 x 좌표가 증가하고요. 아래쪽으로 내려갈수록 y 좌표값이 증가한다고 생각하는 것이 편합니다. 이를 그림으로 나타내면 위와 같습니다. 따라서, (2, 1)은 위 그림과 같습니다. box에 (2, 1, 3, 3)을 넘기면, 아래와 같은 일이 일어납니다. 왼쪽 좌표가 2, 맨 위의 좌표가 1, 오른쪽 좌표가 3, 맨 아래의 좌표가 3입니다. 이를 그림으로 나타..
중급 레퍼런스 검색 결과
pillow에서 thumbnail 함수를 열어보면, 안에서 resize 함수를 호출함을 볼 수 있습니다. 이 글에서는 대략적으로 언급만 하고 넘어갔습니다. 오늘은 resize를 알아보겠습니다. [관련글] python pillow resize 함수를 알아봅시다. 이미지 하나를 열어보겠습니다. 288 x 288px인 이미지입니다. 저는 윈도우 11의 그림판을 실행하였습니다. 크기 조정 및 기울이기가 있습니다. 가로와 세로 사이에 있는 링크 버튼을 활성화 시켜 보겠습니다. 그러면 가로 크기와 세로 크기의 비율이 일정하게 유지됩니다. 가로를 144 픽셀로 바꾸면, 세로도 자연스레 144로 바뀝니다. 일정한 비율로 줄어들었습니다. thumbnail과 동일하다고 할 수 있어요. 다른 점은 thumbnail은 사진의..
안녕하세요. 이번 시간에는 Pillow의 thumbnail 함수에 대해서 알아보겠습니다. 말 그대로 큰 이미지의 썸네일을 보여주는 것이므로, 같은 비율로 축소한 그림을 보여줄 거라는 것을 알 수 있습니다. 보통 size 인자를 많이 쓸 것이니, 이 부분만 간단하게 보도록 하겠습니다. 먼저, thumbnail은 이미지를 썸네일로 만듭니다. 해당 메소드는 주어진 크기보다 더 크게 사진을 만들지 않습니다. 예제 이미지 몇 개로 실험해 보겠습니다. 먼저 test.jpeg입니다. 이 파일은 7724 x 5148 jpeg 형식의 10.5메가짜리 파일입니다. 먼저, test.jpg입니다. 이미지를 연 다음에, thumbnail의 size 인자에 (256, 256)으로 넘겼습니다. 썸네일화 시킨 결과를 test_0.j..
pillow의 transpose는 이미지를 선이나 점을 기준으로 뒤집을 때에도 쓰이고, 회전시킬 때에도 쓰입니다. 간단하게 실습해 보겠습니다. 먼저 원본 이미지는 LEFT입니다. transpose 함수는 리터럴 0부터 6까지를 넘기게 됩니다. 이들 각각은 회전시키거나, 뒤집을 방법을 의미해요. left.jpeg를 엽니다. 다음에 img.transpose(0)을 한 다음에, save를 합니다. 그러면, 0번 방법으로 뒤집거나 회전시키게 됩니다. 0번 방법은 무엇일까요? 기존 이미지에서 무엇이 바뀌었나요? 좌우 대칭이 되어 버렸습니다. FLIP_LEFT_RIGHT입니다. 기존 LEFT 그림에서 L 앞에 세로선을 기준으로 뒤집었다고 생각하시면 되겠습니다. 다음 1번은 어떤가요? 상하가 뒤집혀 버렸습니다. LE..
안녕하세요. exif 때문에 이미지가 이상하게 돌아가는 경우가 있습니다. 이 때 (회전 정보가 있는) exif 정보를 제거하는 방법을 알아보겠습니다. 먼저, 실습에 사용될 이미지는 여기에서 구할 수 있습니다. 제 pycharm에서 down-mirrored.jpg를 열어보겠습니다. down-mirrored.jpg입니다. 아래쪽으로 뒤집어진 모양을 하고 있습니다. 원래 모양은 DOWN이 위로 오고, 다음 줄에 MIRRORED가 돠야 합니다. 회전 정보가 어딘가에 들어가 있음을 알 수 있어요. 우리는 간단하게 이미지를 열고, exif_transpose 함수를 사용해 봅시다. 이 함수의 설명을 보면, EXIF orientation tag가 있다면, 그 정보를 바탕으로 변환된 새로운 사진을 돌려주고, 원래 정보는..
최근댓글