명령줄에서 이미지를 24비트 BMP로 변환하는 방법은 무엇입니까?

명령줄에서 이미지를 24비트 BMP로 변환하는 방법은 무엇입니까?

래퍼 Bash 스크립트를 작성 중입니다.보조 시스템사용하기 쉽게 만드세요. 이 프로그램은 이미지를 사운드로 또는 그 반대로 변환하지만 24비트 BMP 이미지만 허용하며 지금까지는 GIMP를 통해서만 이러한 이미지를 생성할 수 있습니다.

ARSS가 처리할 수 있도록 특정 이미지를 적합한 BMP 파일로 변환하는 방법을 찾고 있습니다. ImageMagic을 사용해 보았 convert으나 24-bt 색상 깊이를 얻을 수 없었습니다.

이것은 내 스크립트입니다.

#!/bin/bash

# where is ARSS binary?
ARSS="/unfa/Applications/ARSS/arss-0.2.3-linux-binary/arss"

convert "$1" -depth 24 "$1.bmp"

$ARSS --quiet "$1.bmp" "$1.wav" --sample-rate 48000 --format-param 32 --sine --min-freq 20 --max-freq 20000 --pps 250

출력은 다음과 같습니다.

$ ./warss.sh 01.png
The Analysis & Resynthesis Sound Spectrograph 0.2.3
Input file : 01.png.bmp
Output file : 01.png.wav
Wrong BMP format, BMP images must be in 24-bit colour

보시다시피 convert "$1" -depth 24 "$1.bmp"24비트 BMP 이미지를 얻기 위해 이를 사용해 보았으나 예상한 대로 작동하지 않았습니다.

참고로 김프를 사용하여 내보낼 때 올바른 파일을 얻었습니다.

여기에 이미지 설명을 입력하세요.

ARSS는 이러한 BMP 파일을 매우 잘 처리할 수 있습니다.

그러나 명령줄에서는 사용할 수 없으며 GIMP의 GUI를 사용하면 매번 달성하려는 목적이 무산됩니다. GIMP에 명령을 제공하여 헤드리스 모드에서 GIMP를 사용하는 방법이 있다고 보는데, 필요한지는 잘 모르겠습니다.

어쩌면 내가 모르는 간단한 것이 있는 것은 아닐까?

답변1

~에 따르면ImageMagick 포럼 게시물을 사용하는 것이 -type truecolor이미지를 24비트로 강제하는 올바른 방법일 수 있습니다.

convert "$1" -type truecolor "$1.bmp"

관련 정보