GIMP를 사용하여 이미지의 레벨을 균일하게 보정(Pythn-Fu)
사용법
GIMP를 시작하려면 다음 메뉴를 선택합니다.
※ 엑셀의 VBA를 아는 사람들은 이미디에트페온과 같은 물건이라고 생각하면 이해하기 쉽다.
이번에는 스크립트에 로그인하지 않고 바로 실행합니다.다음 코드를 복사합니다.
※ 적절한 편집
gamma
또는path
.import os, glob
gamma = 0.3 # 0.1(濃) - 10(薄)
path = "C:\\test"
outdir = os.path.join(path, "output")
if not os.path.exists(outdir):
os.mkdir(outdir)
for jpg in glob.glob(os.path.join(path, "*.jpg")):
img = pdb.gimp_file_load(jpg, "")
disp = pdb.gimp_display_new(img)
pdb.gimp_levels(img.active_drawable, 0, 0, 232, gamma, 0, 255)
newjpg = os.path.join(outdir, os.path.basename(jpg))
pdb.gimp_file_save(img, img.active_layer, newjpg, "")
pdb.gimp_display_delete(disp)
프롬프트를 붙여 넣으면 프롬프트가 ...
로 바뀌어 입력해야 하지만 아무 것도 입력하지 않고 Enter 키를 눌러 닫힌 블록을 시작합니다.pdb.gimp_levels()
를 다른 처리로 바꾸면 다양한 응용이 가능하다.처리하다.
아까의 예에서 실제 등급 수정을 진행한 것은 다음 줄이다.
pdb.gimp_levels(img.active_drawable, 0, 0, 232, gamma, 0, 255)
여기로 바꾸면 다른 처리도 가능해요.몇 가지 예를 보여 주다.영역 선택
pdb.gimp_rect_select(img, 0, 0, 1500, 2200, 2, False, 0)
이후 레벨 수정 등을 하면 이미지의 일부만 가공할 수 있다.크기 조정
pdb.gimp_image_scale_full(img, 256, 256, 3)
자르다
pdb.gimp_image_crop(img, 1420, 2180, 130, 130)
GIF에서 변환
GIF 파일을 열고 JPEG 파일에 저장된 예로 가로로 정렬합니다.종횡비를 유지하다.색상 모드를 RGB로 변환해야 합니다.
width = 1048
for gif in glob.glob(os.path.join(path, "*.gif")):
img = pdb.gimp_file_load(gif, "")
disp = pdb.gimp_display_new(img)
pdb.gimp_image_convert_rgb(img)
pdb.gimp_image_scale_full(img, width, img.height * width / img.width, 3)
newjpg = os.path.join(outdir, os.path.basename(gif)[:-3]+"jpg")
pdb.gimp_file_save(img, img.active_layer, newjpg, "")
pdb.gimp_display_delete(disp)
열린 이미지
열린 그림을 대량으로 처리하면 다음과 같습니다.
for img in gimp.image_list():
pdb.gimp_levels(img.active_drawable, 0, 0, 232, gamma, 0, 255)
비결
파이썬의 사용 방법에 대해서는 대상dir(pdb)
등에 대해 표시할 수 있다.이렇게 하면 파이썬 컨트롤러에서 '참고' 단추를 누르면 표시되는 과정 브라우저에서 찾을 수 있습니다.
※ 이 근처 파이톤의 사용 편의성을 다소 알고 있기 때문에 스크립트-Fu가 아닌 파이톤-Fu를 사용했습니다.
함수 찾기 방법
평균치라지만dir()
에 나오는 함수가 너무 많아서 함수 이름에서 기능을 바로 떠올리지 못하는 경우가 많다.엑셀처럼 매크로 기록을 통해 얻을 수 있다면 쉬울 텐데 그럴 수는 없을 것 같아요.
그래서 간접적이긴 하지만 매뉴얼에서 찾는 방법을 소개하겠다.
매개 변수
참고서를 읽어도 구체적으로 어떤 수치가 나올지 모르는 상황에서 GUI와 비교하면서 고민했다.
참고 자료
Pythn-Fu를 시작하여 파일을 여는 예가 있습니다.
Discretized Spiritualities: Gimp의 file-jpeg-save 매개 변수 2011.04.30
책의 전자화를 보조하기 위해 기프와 pythn-fu를 사용했다오일러의 일기 2010.11.18
문제집에서 인쇄를 하기 위해 Gimp와pythn-fu를 사용했습니다오일러의 일기 2013.11.16
Pythhon: 지정된 경로 디렉토리의 파일 목록 내보내기 2008.08.09
[Pythhon] 파일/디렉토리 작업 2015.12.26
필터 → Pyhon-Fu → 콘솔 for in gimp를 GIMP 통합 수준으로 수정합니다.image_list(): pdb.gimp_levels( https://t.co/Si5Ju30oXV _drawable,00232,0.40255)-칠잡지(@7shi)2016년 7월 26일.
GIMP로 열린 이미지와 함께 동일한 크기를 선택합니다.image_list(): pdb.gimp_rect_select(0015002200,2False,0) 이후 드래그법으로 수동으로 조정 - 7잡지(@7shi)2016년 7월 26일.
Reference
이 문제에 관하여(GIMP를 사용하여 이미지의 레벨을 균일하게 보정(Pythn-Fu)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/7shi/items/3253d5766a4c65cb1a1f텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)