이미지 매직

ImageMagick
이미지 매직
ImageMagick logo
ImageMagick display 7.0.11-4 screenshot.png
디스플레이 스크린샷(메뉴 포함)
원저작자존 크리스티
개발자ImageMagick Studio LLC
초기 릴리즈1990년 8월 1일, 32년 전(1990-08-01)[1]
안정된 릴리스
7.1.0-41[2] / 2022년 7월 7일
저장소
기입처C
운영 체제크로스 플랫폼
유형이미지 조작
면허증.이미지[3][4] 매직
웹 사이트imagemagick.org Edit this at Wikidata
Image Magick 라이선스[4]
작가.ImageMagick Studio LLC
SPDX 식별자이미지[3] 매직
Debian FSG 호환네.
GPL 대응네.
다른 라이선스를 가진 코드에서 링크네.
웹 사이트imagemagick.org Edit this at Wikidata

Image Magick은 명령줄에서 로 호출되며 래스터 이미지를 표시, 작성, 변환, 변경 편집하기 위한 자유[4] 오픈소스 크로스 플랫폼소프트웨어 스위트입니다1987년 John Cristy에 의해 개발되었으며 200개가 넘는 이미지 파일 형식을 읽고 쓸 수 있습니다.오픈 소스 애플리케이션에서 널리 사용됩니다.

역사

ImageMagick은 존 크리스티(John Christy)가 듀폰에서 일하던 1987년 24비트 이미지(1600만 색)를 8비트 이미지(256 색)로 변환해 당시 대부분의 화면에 표시할 수 있도록 하기 위해 만들었다.1990년 DuPont가 ImageMagick Studio LLC에 저작권을 이전하기로 합의하면서 자유롭게 출시되었으며, 현재도 프로젝트 유지 관리 [5][6][7]조직입니다.

2016년 5월에는 ImageMagick에 취약성이 보고되었으며 이를 통해 공격자가 애플리케이션을 사용하여 사용자가 업로드한 [8]이미지를 편집하는 서버에서 임의 코드를 실행할 수 있습니다.CloudFlare 연구원을 포함한 보안 전문가들은 활발한 해킹 [9]시도에서 이 취약성을 실제로 사용하는 것을 관찰했습니다.이 보안 결함은 먼저 경로 및 파일 이름에 잘못된 셸 [10]명령이 없는지 제대로 확인하지 않고 ImageMagick이 백엔드 도구를 호출하여 발생했습니다.이 취약성은 적절하게 구성된 보안 [citation needed]정책이 포함된 ImageMagick 배포에는 영향을 주지 않았습니다.

특징과 기능

소프트웨어는 주로 이미지 조작을 위한 다수의 명령줄 인터페이스 유틸리티로 구성됩니다.ImageMagick은 Adobe Photoshop 및 GIMP같이 이미지를 편집하는 강력한 그래피컬 사용자 인터페이스를 갖추고 있지 않지만 Unix와 유사한 운영체제에서는 이미지 렌더링 및 조작을 위한 기본 X Window GUI(IMDisplay라고 함)와 많은 프로그래밍 언어용 API 라이브러리를 포함하고 있습니다.이 프로그램은 매직넘버를 사용하여 이미지 파일 형식을 식별합니다.

Drupal, MediaWiki, phpBB, vBulletin 등 많은 프로그램이 설치되어 있는 경우 ImageMagick을 사용하여 이미지 미리 보기를 만들 수 있습니다.ImageMagick은 LyX 등의 다른 프로그램에서도 이미지 변환에 사용됩니다.

ImageMagick은 PerlMagick이라고 하는 완전히 통합Perl 바인딩을 가지고 있습니다.또한 G2F(Ada), MagickCore(C), MagickWand(C), ChMagick([11]Ch), ImageMagickObject(COM+), Magick+(C++), JMagava(Java)도 다수 포함되어 있습니다.NET), PascalMagick(Pascal), MagickWand for PHP(PHP), IMagick(PHP), PythonMagick(Python), RMagick(Ruby), TclMagick(Tcl/TK) 중 하나를 선택합니다.

파일 형식 변환

Image Magick의 기본 기능 중 하나는 서로 다른 파일 형식 간에 이미지를 효율적이고 정확하게 변환하는 기능입니다(명령어 사용).convert(을 실현하기 위해서)

색 양자화

화상의 색수는 임의의 수로 줄일 수 있으며, 이는 화상의 픽셀 중 가장 현저한 색값을 측정함으로써 이루어집니다.

와 관련된 기능은 포스터라이제이션 예술 효과로, 이미지에 표현되는 색상의 수를 줄일 수도 있습니다.이 색상과 표준 색 양자화의 차이점은 표준 양자화에서 최종 팔레트는 이미지 내의 기존 색상의 중요도에 대한 가중치에 따라 선택되며, 포스터화는 이미지에 표현된 스펙트럼 전체에 부드럽게 분포된 색 팔레트를 생성한다는 것이다.표준 색 양자화에서는 최종 색 값이 모두 원본 이미지에 있는 값이지만 포스터화된 이미지의 색 값은 원본 이미지에 존재하지 않을 수 있지만 원본 색 값 사이에 있을 수 있습니다.

디더링

컬러 및 쉐이딩 변경 중에 발생하는 디더링에 대해 하프톤 디더링을 생성하는 기능을 포함한 미세 제어를 제공한다.

액체 재스케일링

2008년에는 액체 재스케일링 지원이 추가되었습니다.[12]예를 들어 이 기능을 사용하면 이미지를 왜곡하지 않고 4:3 이미지를 16:9 이미지로 재스케일링할 수 있습니다.

예술적 효과

Image Magick에는 예술적 효과를 내기 위한 다양한 필터와 기능이 포함되어 있습니다.

OpenCL

Image Magick은 OpenCL을 사용하여 고속 그래픽 카드(GPU)를 사용하여 [13]처리할 수 있습니다.

진한 색

Q8 버전은 최대 8비트/픽셀 컴포넌트(8비트 그레이스케일, 24비트 또는 32비트 RGB 컬러)를 지원합니다.Q16 버전은 최대 16비트/픽셀 컴포넌트(16비트 그레이스케일, 최대 48비트 또는 64비트 RGB 컬러)를 지원합니다.

다른.

Image Magick의 다른 기능은 다음과 같습니다.

  • 포맷 변환: 이미지 형식을 변환합니다(예: PNG에서 JPEG로).
  • 변환: 이미지 크기 조정, 회전, 자르기, 플립 또는 트리밍.(가능한 경우 생성 손실 없이 JPEG 파일에 적용됩니다.)
  • 투명도: 이미지의 일부를 보이지 않게 렌더링합니다.
  • 그리기: 이미지에 도형 또는 텍스트를 추가합니다.
  • 장식: 이미지에 테두리 또는 프레임을 추가합니다.
  • 특수 효과: 이미지를 흐리게 하거나 선명하게 하거나 임계값 또는 색칠합니다.
  • 애니메이션: 일련의 이미지에서 GIF 애니메이션 파일을 조립합니다.
  • 텍스트 및 주석: 이미지에 설명 또는 예술 텍스트를 삽입합니다.
  • 이미지 식별: 이미지의 형식과 속성을 설명합니다.
  • Composite(합성): 하나의 이미지를 다른 이미지 위에 겹칩니다.
  • Montage: 이미지 캔버스에 이미지 섬네일을 나란히 배치합니다.
  • 일반화된 픽셀 왜곡: 원근법을 포함한 이미지 왜곡을 수정하거나 유도합니다.
  • 형상의 형태학: 형상의 특징을 추출하고 형상을 기술하며 이미지의 패턴을 인식합니다.
  • 동영상 지원: 디지털 필름 작업에 사용되는 일반적인 이미지 형식을 읽고 씁니다.
  • 이미지 계산기: 이미지 또는 이미지 채널에 수학식을 적용합니다.
  • 이산 푸리에 변환: 정방향 및 역방향 DFT를 구현합니다.
  • 색관리: 색프로파일을 사용하거나 색공간이 요구하는 내장 감마 압축 또는 확장 대신 정확한 색관리.
  • 하이 다이내믹 레인지 이미지: 가장 밝은 직사광선부터 가장 어두운 그림자까지 실제 장면에서 볼 수 있는 광범위한 명암 수준을 정확하게 나타냅니다.
  • 이미지 암호화 또는 해독: 일반 이미지를 이해할 수 없는 횡설수설로 변환하고 다시 되돌립니다.
  • 가상 픽셀 지원: 이미지 영역 밖에 있는 픽셀에 쉽게 액세스 할 수 있습니다.
  • 대용량 이미지 지원: 메가픽셀, 기가픽셀 또는 테라픽셀 이미지 크기 읽기, 처리 또는 쓰기.
  • 실행 지원 스레드:Image Magick은 스레드 세이프이며, 대부분의 내부 알고리즘이 병렬로 실행되어 멀티코어 프로세서 칩이 제공하는 속도 향상을 이용할 수 있습니다.
  • 이기종 분산 처리: 특정 알고리즘은 OpenCL을 지원하므로 CPU, GPU 및 기타 프로세서로 구성된 이기종 플랫폼에서 동시에 실행함으로써 제공되는 속도 향상을 활용할 수 있습니다.
  • 분산 픽셀 캐시: 중간 픽셀 스토리지를 하나 이상의 리모트 서버로 오프로드합니다.
  • iPhone의 ImageMagick: iPhone이나 iPad 등의 iOS 컴퓨팅 디바이스에서 이미지를 변환, 편집 또는 합성합니다.

분배

Image Magick은 크로스 플랫폼이며 Linux, macOS, iOS, Android, Solaris, Haiku, FreeBSD Microsoft Windows 및 Unix 유사 시스템에서 실행됩니다.프로젝트의 소스 코드는 AmigaOS 4.0 및 MorphOS를 포함한 다른 시스템용으로 컴파일할 수 있습니다.IRIX에서 [14]실행되고 있습니다.

관련 소프트웨어

Graphics Magick은 2002년에 제조된 Image Magick 5.5.2의 포크입니다.프로그래밍 API와 명령줄 옵션의 크로스 릴리스 안정성을 중시합니다.Graphics Magick은 개발자 [15]그룹에서의 타협할 수 없는 차이로 인해 등장했습니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ "History". ImageMagick. Archived from the original on March 14, 2018. Retrieved March 18, 2018. Dr. Pensak had to convince upper management at DuPont. ... Either way, ImageMagick would not be available today without DuPont transferring the copyright to ImageMagick Studio LLC. ImageMagick was posted to Usenet's comp.archives group on August 1, 1990.
  2. ^ "Release build (7.1.0-41)".
  3. ^ a b "ImageMagick License". spdx.org.
  4. ^ a b c "ImageMagick: License". ImageMagick. Archived from the original on October 26, 2016. Retrieved October 26, 2016.
  5. ^ "ImageMagick: History". www.imagemagick.org. ImageMagick Studio. Archived from the original on October 29, 2016. Retrieved October 18, 2016.
  6. ^ Hajdarbegovic, Nermin (February 12, 2019). "ImageMagick: Manipulating Graphics From The Command-Line?". whoishostingthis.com. Retrieved August 18, 2020.
  7. ^ "ImageMagick". computerhope.com. February 27, 2019. Retrieved August 18, 2020.
  8. ^ "Exploits gone wild: Hackers target critical image-processing bug". Ars Technica. 2016. Archived from the original on September 25, 2016. Retrieved September 26, 2016.
  9. ^ "Inside ImageTragick: The Real Payloads Being Used to Hack Websites". CloudFlare. 2016. Archived from the original on October 1, 2016. Retrieved September 26, 2016.
  10. ^ Williams, Chris (May 4, 2016). "Server-jacking exploits for ImageMagick are so trivial, you'll scream". The Register. Archived from the original on December 23, 2017. Retrieved December 22, 2017.
  11. ^ LLC, ImageMagick Studio. "PerlMagick, Perl API @ ImageMagick". imagemagick.org. Archived from the original on May 10, 2017. Retrieved May 22, 2017.
  12. ^ "ImageMagick Changelog". Archived from the original on June 6, 2016. Retrieved July 29, 2021.
  13. ^ "ImageMagick: Architecture". Archived from the original on June 1, 2016. Retrieved January 6, 2010.
  14. ^ "Magick++ API: Install Magick++". imagemagick.org. Archived from the original on May 8, 2017. Retrieved May 22, 2017.
  15. ^ "Introducing GraphicsMagick Project". ImageMagick-developer Mailing List. March 15, 2003.

추가 정보

외부 링크

  • 공식 웹사이트 Edit this at Wikidata
  • Image Magick 보안 정책– Image Magick 보안 정책– 베스트 프랙티스에서는 로컬 환경에 맞는 보안 정책을 설정할 것을 강력히 권장합니다.
  • IM의 예(CLI의 사용 예)는 다양한 기능을 나타내는 작은 예를 다수 나타냅니다.
  • Fred의 Image Magick 스크립트– Image Magick을 사용하여 더 복잡한 작업을 수행하는 수많은 셸 스크립트를 제공합니다.
  • Image Magick을 사용한 PDF 구조 테스트 자동화 방법– Image Magick의 기능 변환, 비교 및 대조 방법을 보여줍니다.
  • ImageMagick의 중요한 취약성 ImageMagick은 잘못된 형식의 이미지를 사용하여 웹 서버에서 코드를 강제로 실행할 수 있는 취약성을 가지고 있습니다.