Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 

Repository files navigation

WhatSim - Fujifilm Film Simulation Analyzer

A command-line tool for analyzing EXIF data from Fujifilm camera images to identify and match film simulation settings against predefined configurations.

Features

  • Film Simulation Identification: Automatically detects film simulation settings from Fujifilm camera EXIF data
  • Configurable Presets: Uses YAML configuration files to define custom film simulation presets
  • Verbose Mode: Detailed field-by-field comparison with color-coded output
  • Keyword Updates: Automatically adds film simulation keywords to image metadata
  • Batch Processing: Process multiple images or entire directories
  • Partial Match Detection: Identifies close matches and suggests new simulation configurations

Installation

Prerequisites

  • exiftool: Required for reading EXIF data from images
    # macOS (using Homebrew)
    brew install exiftool
    
    # Ubuntu/Debian
    sudo apt-get install exiftool
    
    # CentOS/RHEL
    sudo yum install exiftool

Setup

  1. Clone or download the repository
  2. Make the script executable:
    chmod +x whatsim
  3. Ensure film_simulations.yaml is in the same directory as the script

Usage

Basic Usage

# Analyze a single image
./whatsim image.jpg

# Analyze multiple images
./whatsim image1.jpg image2.jpg image3.jpg

# Process all JPG files in a directory
./whatsim /path/to/images/

# Use wildcards
./whatsim *.JPG

Command Line Options

  • --verbose or -v: Enable verbose mode for detailed field-by-field comparison
  • --update: Automatically add film simulation keywords to image metadata

Examples

# Basic analysis
./whatsim DSCF6388.JPG
# Output: DSCF6388.JPG: Summer Chrome

# Verbose mode with detailed comparison
./whatsim --verbose DSCF6103.JPG
# Shows extracted EXIF values and color-coded field comparisons

# Update image keywords
./whatsim --update DSCF6388.JPG
# Adds "Fujifilm:Summer Chrome" keyword to the image

# Combine options
./whatsim --verbose --update *.JPG
# Detailed analysis and keyword updates for all JPG files

Configuration

Film Simulation Presets

Film simulation presets are defined in film_simulations.yaml. Each preset includes:

- name: "Preset Name"
  film_mode: "Classic Chrome"
  dynamic_range: "StandardAuto"
  dynamic_range_setting: "Auto"
  development_dynamic_range: ""
  highlight_tone: "-1 (medium soft)"
  shadow_tone: "-1 (medium soft)"
  saturation: "+2 (high)"
  sharpness: "Soft"
  clarity: "0"
  grain_effect_roughness: "Weak"
  grain_effect_size: "Small"
  color_chrome_effect: "Strong"
  color_chrome_fx_blue: "Weak"
  white_balance: "Auto"
  white_balance_fine_tune: "Red +40, Blue -80"

Adding New Presets

  1. Edit film_simulations.yaml
  2. Add a new preset following the format above
  3. Use the suggested YAML output from the script to create accurate presets

Output Modes

Default Mode

Clean, minimal output showing only the identified simulation:

DSCF6388.JPG: Summer Chrome
DSCF6246.JPG: Vibrant Arizona (Custom)
DSCF4553.JPG: Classic Cuban Negative (Custom)

Verbose Mode

Detailed analysis with:

  • Extracted EXIF values from the image
  • Field-by-field comparison with each simulation
  • Color-coded comparison with the best match:
    • Green: Matching fields
    • Red: Mismatched fields with expected values
  • Suggested YAML for unknown or weak matches

Supported Fujifilm Settings

The script analyzes the following EXIF fields:

  • Film Mode
  • Dynamic Range
  • Dynamic Range Setting
  • Development Dynamic Range
  • Highlight Tone
  • Shadow Tone
  • Saturation
  • Sharpness
  • Clarity
  • Grain Effect Roughness
  • Grain Effect Size
  • Color Chrome Effect
  • Color Chrome FX Blue
  • White Balance
  • White Balance Fine Tune

Troubleshooting

Common Issues

  1. "exiftool: command not found"

    • Install exiftool (see Installation section)
  2. "Configuration file not found"

    • Ensure film_simulations.yaml is in the same directory as the script
  3. "Unknown Simulation"

    • The image settings don't match any defined presets
    • Use verbose mode to see the extracted values
    • Add a new preset to the YAML file using the suggested output

Debugging

Use verbose mode to see detailed information:

./whatsim --verbose image.jpg

This will show:

  • All extracted EXIF values
  • Field-by-field comparisons
  • Color-coded best match analysis
  • Suggested YAML for unknown simulations

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Test with various image files
  5. Submit a pull request

License

This project is open source. Feel free to use and modify as needed.

Acknowledgments

  • ExifTool for EXIF data extraction
  • Fujifilm for their excellent film simulation technology

About

Fujifilm film simulation analyzer - identifies film simulation settings from EXIF data

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages