次のコードでバッチスクリプトを作成できます。

@ECHOオフ

REMはImageMagickとVMAFツールへのパスを設定します
im_path = c：\ imageemagickを設定します
vmaf_path = c：\ vmafを設定します

remは画像用の入力フォルダーと出力フォルダーを設定します
input_folder = c：\ inputを設定します
set output_folder = c：\ output

入力フォルダー内のすべての画像をREMループ
for /r％input_folder %% f in（*.jpg）do（
  remは93の品質でjpegxlに画像をエンコードします
  ％im_path％\ convert.exe "%% f" quality 93 "％output_folder％\ %%〜nf.jpegxl"

  REMは、画像のVMAFスコアを計算します
  ％vmaf_path％\ vmafossexec.exe yuv420p 1920 1080％output_folder％\ %% 〜nf.jpegxl％output_folder％\ %% 〜nf.jpegxl> "％output_folder％\ vmaf-scores.txt"

  REMテキストファイルからVMAFスコアを読み取ります
  for /f "tokens = 2 delims =：" %% g in（ 'findstr /c： "vmaf score" "％output_forder％\ vmaf-scores.txt"'）set score = %% g

  VMAFスコアが90未満であるかどうかを確認してください
  ％スコア％LSS 90の場合（
    remは97の品質でjpegxlに画像をエンコードします
    ％im_path％\ convert.exe "%% f" quality 97 "％output_folder％\ %%〜nf.jpegxl"

    REMは、画像のVMAFスコアをもう一度計算します
    ％vmaf_path％\ vmafossexec.exe yuv420p 1920 1080％output_folder％\ %% 〜nf.jpegxl％output_folder％\ %%〜nf.jpegxl> "％output_folder％\ vmaf-scores-new.txt"

    レッドテキストファイルからVMAFスコアをもう一度読む
    for /f "tokens = 2 delims =：" %% g in（ 'findstr /c： "vmaf score" "％output_forder％\ vmaf-scores-new.txt"'）do set new_score = %% g

    VMAFスコアがまだ90未満であるかどうかを確認する
    ％new_score％LSS 90の場合（
      レムはコンピューターをシャットダウンしました
      シャットダウン /s /t 0
    ））））
  ））））
））））

インストールに応じて、ImageMagickとVMAFにパスを適応させる必要があることに注意してください。また、画像のサイズと目的の出力品質を指定する必要があります。
Sie können ein Batch-Skript mit dem folgenden Code erstellen:

@echo off

REM Set the path to ImageMagick and the VMAF tool
set IM_PATH=C:\ImageMagick
set VMAF_PATH=C:\vmaf

REM Set the input folder and output folder for images
set INPUT_FOLDER=C:\input
set OUTPUT_FOLDER=C:\output

REM Loop through all the images in the input folder
for /r %INPUT_FOLDER% %%f in (*.jpg) do (
  REM Encode the image to JpegXL with a quality of 93
  %IM_PATH%\convert.exe "%%f" -quality 93 "%OUTPUT_FOLDER%\%%~nf.jpegxl"

  REM Calculate the VMAF score for the image
  %VMAF_PATH%\vmafossexec.exe yuv420p 1920 1080 %OUTPUT_FOLDER%\%%~nf.jpegxl %OUTPUT_FOLDER%\%%~nf.jpegxl > "%OUTPUT_FOLDER%\vmaf-scores.txt"

  REM Read the VMAF score from the text file
  for /f "tokens=2 delims=:" %%g in ('findstr /c:"VMAF score" "%OUTPUT_FOLDER%\vmaf-scores.txt"') do set score=%%g

  REM Check if the VMAF score is below 90
  if %score% LSS 90 (
    REM Encode the image to JpegXL with a quality of 97
    %IM_PATH%\convert.exe "%%f" -quality 97 "%OUTPUT_FOLDER%\%%~nf.jpegxl"

    REM Calculate the VMAF score for the image again
    %VMAF_PATH%\vmafossexec.exe yuv420p 1920 1080 %OUTPUT_FOLDER%\%%~nf.jpegxl %OUTPUT_FOLDER%\%%~nf.jpegxl > "%OUTPUT_FOLDER%\vmaf-scores-new.txt"

    REM Read the VMAF score from the text file again
    for /f "tokens=2 delims=:" %%g in ('findstr /c:"VMAF score" "%OUTPUT_FOLDER%\vmaf-scores-new.txt"') do set new_score=%%g

    REM Check if the VMAF score is still below 90
    if %new_score% LSS 90 (
      REM Shut down the computer
      shutdown /s /t 0
    )
  )
)

Bitte beachten Sie, dass Sie die Pfade zu ImageMagick und VMAF entsprechend Ihrer Installation anpassen müssen. Außerdem müssen Sie die Größe des Bildes und die gewünschte Ausgabequalität angeben.