• Posts
  • RSS
  • ◂◂RSS
  • Contact

  • Compiling SSIM on Mac

    November 25th, 2014
    tech  [html]
    If you want to examine the distortion that comes from a lossy compression algorithm, it's helpful to have a tool that's a good proxy for asking a person "how similar are these two images"? The standard algorithm for this is SSIM, but there are several implementations. I was initially using Pornel's dssim, but I wanted to compare this to Mehdi's SSIM. Mehdi's doesn't document how to compile it on a mac, so here's what worked for me:

    1. Install OpenCV
      1. Download OpenCV for linux/mac. I downloaded 2.4.9 from opencv.org/downloads.
      2. unzip ~/Downloads/opencv-2.4.9.zip
      3. cd ~/Downloads/opencv-2.4.9/
      4. mkdir build && cd build
      5. cmake -G "Unix Makefiles" ..
      6. make -j8
      7. sudo make install
    2. Download SSIM.ccp: wget http://mehdi.rabah.free.fr/SSIM/SSIM.cpp
    3. The SSIM.cpp file needs a small change: replace "#include <iostream.h>" with "#include <iostream>".
    4. Compile with:
      g++ -I/usr/local/include/opencv \
          -L/usr/local/lib/ \
          -lopencv_core \
          -lopencv_highgui \
          -lopencv_imgproc \
          SSIM.cpp \
          -o ssim
    5. Enjoy using SSIM: ./ssim a-original.png a-modified.png

    Recent posts on blogs I like:

    What should we do about network-effect monopolies?

    Many large companies today are software monopolies that give their product away for free to get monopoly status, then do horrible things. Can we do anything about this?

    via benkuhn.net July 5, 2020

    More on the Deutschlandtakt

    The Deutschlandtakt plans are out now. They cover investment through 2040, but even beforehand, there’s a plan for something like a national integrated timetable by 2030, with trains connecting the major cities every 30 minutes rather than hourly. But the…

    via Pedestrian Observations July 1, 2020

    How do cars fare in crash tests they're not specifically optimized for?

    Any time you have a benchmark that gets taken seriously, some people will start gaming the benchmark. Some famous examples in computing are the CPU benchmark specfp and video game benchmarks. With specfp, Sun managed to increase its score on 179.art (a su…

    via Posts on Dan Luu June 30, 2020

    more     (via openring)


  • Posts
  • RSS
  • ◂◂RSS
  • Contact