bd_rate.sh 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. #!/bin/bash
  2. set -e
  3. if [ $# == 0 ]; then
  4. echo "usage: BUILD_ROOT=<build_dir> $0 <RD-1.out> <RD-2.out>"
  5. exit 1
  6. fi
  7. if [ -z "$BUILD_ROOT" ]; then
  8. BUILD_ROOT=.
  9. fi
  10. if [ -z "$BJONTEGAARD" ]; then
  11. BJONTEGAARD=$BUILD_ROOT/tools/bjontegaard
  12. fi
  13. if [ ! -f "$BJONTEGAARD" ]; then
  14. echo "File not found BJONTEGAARD=$BJONTEGAARD"
  15. echo "Do you have the right BUILD_ROOT=$BUILD_ROOT"
  16. exit 1
  17. fi
  18. N1=$(cat $1 | wc -l)
  19. N2=$(cat $2 | wc -l)
  20. AREA1=$(cut -d\ -f 2 $1 | xargs | sed 's/ /,/g')
  21. AREA2=$(cut -d\ -f 2 $2 | xargs | sed 's/ /,/g')
  22. SIZE1=$(cut -d\ -f 3 $1 | xargs | sed 's/ /,/g')
  23. SIZE2=$(cut -d\ -f 3 $2 | xargs | sed 's/ /,/g')
  24. PSNR1=$(cut -d\ -f 4 $1 | xargs | sed 's/ /,/g')
  25. PSNR2=$(cut -d\ -f 4 $2 | xargs | sed 's/ /,/g')
  26. PSNRHVS1=$(cut -d\ -f 5 $1 | xargs | sed 's/ /,/g')
  27. PSNRHVS2=$(cut -d\ -f 5 $2 | xargs | sed 's/ /,/g')
  28. SSIM1=$(cut -d\ -f 6 $1 | xargs | sed 's/ /,/g')
  29. SSIM2=$(cut -d\ -f 6 $2 | xargs | sed 's/ /,/g')
  30. FASTSSIM1=$(cut -d\ -f 7 $1 | xargs | sed 's/ /,/g')
  31. FASTSSIM2=$(cut -d\ -f 7 $2 | xargs | sed 's/ /,/g')
  32. PSNR_RATE=$($BJONTEGAARD 0 $N1 $AREA1 $SIZE1 $PSNR1 $N2 $AREA2 $SIZE2 $PSNR2)
  33. PSNR_DSNR=$($BJONTEGAARD 1 $N1 $AREA1 $SIZE1 $PSNR1 $N2 $AREA2 $SIZE2 $PSNR2)
  34. PSNRHVS_RATE=$($BJONTEGAARD 0 $N1 $AREA1 $SIZE1 $PSNRHVS1 $N2 $AREA2 $SIZE2 $PSNRHVS2)
  35. PSNRHVS_DSNR=$($BJONTEGAARD 1 $N1 $AREA1 $SIZE1 $PSNRHVS1 $N2 $AREA2 $SIZE2 $PSNRHVS2)
  36. SSIM_RATE=$($BJONTEGAARD 0 $N1 $AREA1 $SIZE1 $SSIM1 $N2 $AREA2 $SIZE2 $SSIM2)
  37. SSIM_DSNR=$($BJONTEGAARD 1 $N1 $AREA1 $SIZE1 $SSIM1 $N2 $AREA2 $SIZE2 $SSIM2)
  38. FASTSSIM_RATE=$($BJONTEGAARD 0 $N1 $AREA1 $SIZE1 $FASTSSIM1 $N2 $AREA2 $SIZE2 $FASTSSIM2)
  39. FASTSSIM_DSNR=$($BJONTEGAARD 1 $N1 $AREA1 $SIZE1 $FASTSSIM1 $N2 $AREA2 $SIZE2 $FASTSSIM2)
  40. echo " RATE (%) DSNR (dB)"
  41. echo " PSNR" $(echo $PSNR_RATE | cut -d\ -f 3) $(echo $PSNR_DSNR | cut -d\ -f 3)
  42. echo " PSNRHVS" $(echo $PSNRHVS_RATE | cut -d\ -f 3) $(echo $PSNRHVS_DSNR | cut -d\ -f 3)
  43. echo " SSIM" $(echo $SSIM_RATE | cut -d\ -f 3) $(echo $SSIM_DSNR | cut -d\ -f 3)
  44. echo "FASTSSIM" $(echo $FASTSSIM_RATE | cut -d\ -f 3) $(echo $FASTSSIM_DSNR | cut -d\ -f 3)