C++용 오픈 소스 빠른 이미지 처리 라이브러리
인기 있는 이미지 형식 생성, 조작, 그리기, 분할, 복사 및 변환 필터를 적용하고, 두 개의 이미지를 나누고, 무료 C++ 라이브러리를 통해 이미지를 격자선으로 표시합니다.
libvips는 매우 낮은 메모리를 사용하고 매우 빠른 작업을 수행하는 오픈 소스 고급 이미지 처리 라이브러리입니다. 라이브러리는 대용량 이미지를 쉽게 처리할 수 있으며 JPEG, TIFF, PNG, WebP, HEIC, FITS, Matlab, OpenEXR, PDF, SVG, HDR, PPM/PGM/PFM, CSV, GIF와 같은 적절한 범위의 이미지 파일 형식을 지원합니다. , 분석, NIfTI, DeepZoom 및 OpenSlide. ImageMagick 또는 GraphicsMagick을 통해 이미지를 쉽게 로드할 수 있으므로 DICOM과 같은 형식으로 작업할 수 있습니다.
libvips 프리미티브는 현명하게 적용되며 런타임 코드 생성과 같은 일부 사용 기술은 이미지를 빠르게 처리하는 데 도움이 됩니다. 다른 이미지 처리 라이브러리와 비교할 때 libvips는 RAM이 거의 필요하지 않으며 특히 CPU가 여러 개인 시스템에서 더 빠르게 실행됩니다. 이는 주로 이미지 워크플로를 자동으로 분할하는 지능형 아키텍처를 사용하기 때문입니다.
라이브러리는 단순한 8비트 int에서 복잡한 128비트에 이르기까지 광범위한 숫자 유형을 지원합니다. 대부분의 이미지 처리 라이브러리는 스레드 작업을 사용하지만 libvips는 스레드를 이미지 IO 시스템에 넣고 작업을 위해 각 스레드에 전체 이미지 파이프라인의 복사본을 할당합니다. 이 수평 스레딩 스타일은 프로세서 캐시를 더 잘 사용하고 잠금을 줄입니다.
libvips 라이브러리는 다른 많은 라이브러리보다 더 나은 성능을 제공하는 이미지 처리 라이브러리입니다. 라이브러리는 이미지 그리기, 두 이미지 나누기, 이미지에 원 그리기, 이미지 복사, 이미지를 다른 이미지에 그리기, 이미지에 선 그리기, 이미지 캐스팅, 캐시와 같은 몇 가지 중요한 이미지 처리 기능을 지원합니다. 이미지, 두 개의 이미지 추가, 가우스 이미지 만들기, 이미지에서 한 점 읽기, 이미지 그리드, JPEG 파일로 이미지 저장 등 다양한 작업이 가능합니다.
libvips 시작하기
다음 명령을 사용하여 최신 소스를 복제합니다.
Install OpenImageIO via git command
git 명령을 통해 OpenImageIO 설치
git clone git://github.com/libvips/libvips.git
git에서 빌드하려면 더 많은 패키지가 필요하며 최소한 gtk-doc 및 gobject-introspection이 필요합니다.
Install libvips packages via git command
git 명령을 통해 libvips 패키지 설치
./autogen.sh
make
sudo make install
C++ API를 통한 더 빠른 이미지 렌더링
libvips 라이브러리는 모든 주요 플랫폼에서 더 빠른 이미지 생성 및 조작을 위한 기능을 제공했습니다. ImageMagick 및 GD 라이브러리와 같은 주요 이미지 처리 라이브러리 중 일부는 매우 강력하며 이미지 작업을 위한 고급 기능을 제공하지만 이미지 처리를 위해 많은 양의 메모리가 필요합니다. 반면에 libvips는 ImageMagick과 거의 동일한 작업을 수행할 수 있지만 훨씬 빠르고 비교적 작은 메모리 공간을 차지합니다.
지원되는 다른 형식으로 이미지 저장
오픈 소스 libvips 라이브러리는 다양한 형식으로 이미지를 로드하고 저장하는 일련의 작업을 제공했습니다. 라이브러리에는 TIFF, JPEG, PNG, Analyze, PPM, OpenEXR, CSV, Matlab, Radiance, RAW, FITS, WebP, SVG, PDF, GIF 및 VIPS와 같은 인기 있는 형식으로 이미지를 저장하기 위한 내장 지원이 포함되어 있습니다. VipsForeign을 사용하여 다양한 형식의 이미지를 로드하고 저장할 수 있습니다.
더 빠른 이미지 크기 조정
오픈 소스 libvips 라이브러리는 소프트웨어 개발자에게 자신의 앱 내에서 즉석에서 이미지 크기를 조정할 수 있는 기능을 제공합니다. 먼저 이미지 이름과 전체 주소를 제공하여 이미지 저장소에서 이미지를 로드해야 합니다. 그런 다음 필요에 따라 지정된 너비와 높이로 크기를 조정할 수 있습니다. 그런 다음 원하는 위치에 새 크기로 저장할 수 있습니다.
C++ API를 통한 이미지 필터링
이미지 필터링은 전 세계적으로 다양한 이미지 처리 및 컴퓨터 비전 애플리케이션에 사용되는 귀중한 기능입니다. libvips 라이브러리는 C++ 명령을 통한 이미지 필터링을 완벽하게 지원합니다. 스무딩, 샤프닝 및 에지 향상과 같은 기능은 필터링으로 구현된 이미지 처리 작업의 몇 가지 예입니다. 라이브러리에는 왼쪽과의 차이, 왼쪽과 위쪽의 평균, 적응형, 자동으로 가장 좋은 이웃 예측자 선택, 필터링 없음과 같은 PNG 필터도 포함되어 있습니다. 여기에는 libMagick 및 OpenSlide와 함께 로드할 수 있는 가져오기 필터도 포함되어 있습니다.