The Smell of Molten Projects in the Morning

Ed Nisley's Blog: Shop notes, electronics, firmware, machinery, 3D printing, laser cuttery, and curiosities. Contents: 100% human thinking, 0% AI slop.

Category: Photography & Images

Taking & making images.

  • Spectral Characteristics: The Graph

    In the process of pulling together a talk for the Trinity Robotics contest, I rediscovered my spreadsheet of spectral response data. It’s been compiled over the years from myriad sources (utterly without attribution), suffers from gaps & interpolations, and undoubtedly emits a fairly high bogon flux density.

    To wit: trust nothing!

    Spectral Response
    Spectral Response

    Horizontal scale has UV on the left and IR on the right.

    Vertical scale is linear, roughly corresponding to power in or out at a particular wavelength. It should, of course, be logarithmic, but that’s in the nature of fine tuning, as no source data has that much resolution.

    Things to note:

    • Human eyes are tuned to see chlorophyll and not much else. That must’a been important at one time or another…
    • The nice bumps on the left are visible LEDS: violet blue green orange yellow red. The IR LED over on the right stands alone.
    • There’s no overlap between human vision and IR LED emission, but you can still see a dim red glow if you stick it right up against your eye.
    • Don’t do that with a UV LED, though.
    • White LEDs are just blue LEDs with fancy phosphors. That’s why the spectrum looks like a blue LED with a bump in the yellow-orange neighborhood. They’re not well-balanced at all.
    • High-pressure sodium lights kill IR sensors stone cold dead. Look at that peak, perfectly aligned with the photodiode response. If you could see in IR, you’d go blind. That’s what made the Trinity contest so challenging for so many years; they recently switched to fluorescent lighting and the complaints dropped dramatically.
    • Those emission spikes are why camera color correction doesn’t work well: if there’s no energy in a region, you can’t crank the gain up enough to make a difference.
    • An 87C Wratten filter is great for excluding visible light, but the overlap with that HP-Na spike tells you it won’t do jack with that sort of lighting.
    • Fluorescent tubes produce intense spikes at 436 and 546, corresponding to mercury emission lines. Their phosphor emissions extend far into the IR, too, but the data I have doesn’t include that region.
    • Ditto for metal halide bulbs.

    To produce the graph, apply this bash script to the CSV file…

    
    #!/bin/sh
    export GDFONTPATH="/usr/share/fonts/TTF/"
    gnuplot << EOF
    #set term x11
    set term png font "arialbd.ttf" 24 size 1200,800
    set output "Spectral Response.png"
    set title "Spectral Response"
    #set key 28,-0.75 Left reverse samplen 2 noautotitles
    #set key right noautotitles
    unset key
    unset mouse
    set bmargin 4
    set grid xtics ytics
    set xlabel "Wavelength - nm"
    set format x "%3.0f"
    #set xrange [0:9]
    #set xtics 0,10
    #set mxtics 4
    set ytics nomirror autofreq
    set ylabel "Relative Response"
    #set format y "%3.0f"
    set yrange [0:1.1]
    #set y2label "Panel Power - mW"
    #set format y2 "%3.0f"
    #set y2range [0:800]
    #set y2tics 200
    set datafile separator ","
    set label 1 "Eye" at 550,1.05 font "arialbd,14" center
    set label 2 "White" at 480,1.05 font "arialbd,14" center
    set label 3 "IR" at 940,1.05 font "arialbd,14" center
    set label 4 "87C Filter" at 1050,0.85 font "arialbd,14" center
    set label 5 "Photodiode" at 825,1.05 font "arialbd,14" center
    set label 6 "Tungsten" at 1050,1.00 font "arialbd,14" center
    set label 7 "Fluor" at 410,0.42 font "arialbd,14" right
    set label 8 "Halide" at 680,0.41 font "arialbd,14" left
    set label 9 "HP-Na" at 805,0.60 font "arialbd,14" right
    set label 10 "Violet" at 410,1.05 font "arialbd,14" center
    set label 11 "Red" at 635,1.05 font "arialbd,14" center
    plot    "Spectral Response Curves.csv" \
     using 1:2 with lines lt -1  lw 3 title "Eye", \
     "Spectral Response Curves.csv" \
     using 1:3 with lines lt 1 lw 2 lc rgb "light-blue" title "White" , \
     "Spectral Response Curves.csv" \
     using 1:4 with lines lt 1 lw 2 lc rgb "dark-violet" title "Violet" , \
     "Spectral Response Curves.csv" \
     using 1:5 with lines lt 1 lw 2 lc rgb "blue" title "Blue" , \
     "Spectral Response Curves.csv" \
     using 1:6 with lines lt 1 lw 2 lc rgb "green" title "Green" , \
     "Spectral Response Curves.csv" \
     using 1:7 with lines lt 1 lw 2 lc rgb "gold" title "Yellow" , \
     "Spectral Response Curves.csv" \
     using 1:8 with lines lt 1 lw 2 lc rgb "orange" title "Orange" , \
     "Spectral Response Curves.csv" \
     using 1:9 with lines lt 1 lw 2 lc rgb "red" title "Red", \
     "Spectral Response Curves.csv" \
     using 1:10 with lines lt 1 lw 2 lc rgb "magenta" title "IR" , \
     "Spectral Response Curves.csv" \
     using 1:11 with lines lt 1 lw 2 lc rgb "dark-red" title "Photodiode" , \
     "Spectral Response Curves.csv" \
     using 1:12 with lines lt 1 lw 2 lc rgb "dark-gray" title "87C Filter" , \
     "Spectral Response Curves.csv" \
     using 1:13 with lines lt 1 lw 2 lc rgb "dark-yellow" title "Tungsten" , \
     "Spectral Response Curves.csv" \
     using 1:14 with lines lt 1 lw 2 lc rgb "orange-red" title "HP-Na" , \
     "Spectral Response Curves.csv" \
     using 1:15 with lines lt 1 lw 2 lc rgb "brown" title "Halide" , \
     "Spectral Response Curves.csv" \
     using 1:18 with lines lt 1 lw 2 lc rgb "midnight-blue" title "Fluorescent"
    EOF
    
    

    And the data in CSV format because WordPress doesn’t allow spreadsheets…

    
    #"Wavelength","Eyeball","White LED","Violet LED","Blue LED","Green LED","Yellow LED","Orange LED","Red LED","IR LED","Photodiode","IR Filter","Incandescent","Sodium","Metal Halide","Daylight Flour","Moon Fluor","Fluorescent"
    300,,,,,,,,,,,,,,,,,
    310,,,,,,,,,,,,,,,,,
    320,,,,,,,,,,,,,,,,,
    340,,,,,,,,,,,,,,,,,
    350,,,,,,,,,,,,,,,,,
    360,,,,,,,,,,,,,,,,,
    370,,,0.02,,,,,,,,,,,,,,
    380,,,0.11,,,,,,,,,,,0.06,0.04,0.03,0.03
    385,,,,,,,,,,,,,,0.06,0.05,0.04,0.03
    390,,,0.33,,,,,,,,,,,0.07,0.06,0.05,0.04
    395,,,,,,,,,,,,,,0.08,0.07,0.06,0.05
    400,,,0.90,,,,,,,0.05,,0.09,,0.09,0.09,0.07,0.06
    405,,,,,,,,,,,,,,0.10,0.40,0.37,0.39
    410,,,1.00,,,,,,,,,,,0.10,0.13,0.10,0.09
    415,,,,,,,,,,,,,,0.15,0.13,0.10,0.09
    420,0.05,0.02,0.33,0.02,,,,,,0.12,,0.12,,0.26,0.15,0.11,0.10
    425,,,,,,,,,,,,,,0.16,0.16,0.13,0.11
    430,,0.05,0.11,0.11,,,,,,,,,,0.13,0.18,0.14,0.12
    435,,,,,,,,,,,,,,0.13,1.00,1.00,1.00
    440,0.16,0.08,0.05,0.92,,,,,,0.19,,0.15,,0.11,0.21,0.17,0.14
    445,,,,,,,,,,,,,,0.11,0.22,0.18,0.15
    450,,0.30,,1.00,,,,,,,,,,0.13,0.24,0.19,0.16
    455,,,,,,,,,,,,,,0.15,0.26,0.20,0.17
    460,0.25,0.65,,0.77,,,,,,0.25,,0.19,,0.18,0.26,0.21,0.17
    465,,,,,,,,,,,,,,0.15,0.26,0.21,0.18
    470,,0.90,,0.22,,,,,,,,,,0.15,0.26,0.21,0.18
    475,,,,,,,,,,,,,,0.17,0.27,0.22,0.18
    480,0.36,1.00,,0.11,,,,,,0.32,,0.22,0.02,0.20,0.27,0.22,0.18
    485,,,,,,,,,,,,,,0.16,0.27,0.22,0.18
    490,,0.80,,0.03,,,,,,,,,,0.20,0.27,0.22,0.18
    495,,,,,,,,,,,,,,0.17,0.27,0.22,0.18
    500,0.50,0.32,,,,,,,,0.39,,0.25,0.10,0.18,0.26,0.21,0.18
    505,,,,,,,,,,,,,,0.23,0.25,0.21,0.17
    510,,,,,,,,,,,,,,0.22,0.25,0.20,0.17
    515,,,,,,,,,,,,,,0.22,0.24,0.20,0.17
    520,0.70,0.30,,,,,,,,0.44,,,0.02,0.18,0.24,0.20,0.18
    525,,,,,,,,,,,,,,0.20,0.24,0.20,0.19
    530,,,,,,,,,,,,,,0.22,0.24,0.20,0.21
    535,,,,,,,,,,,,,,1.00,0.24,0.21,0.24
    540,1.00,0.48,,,0.08,,,,,0.49,,,0.02,0.45,0.26,0.23,0.27
    545,,,,,,,,,,,,,,0.27,0.70,0.67,0.78
    550,1.00,0.55,,,0.45,,,,,0.52,,,0.05,0.18,0.29,0.27,0.36
    555,,,,,,,,,,,,,,0.20,0.30,0.30,0.40
    560,1.00,0.55,,,0.95,0.13,,,,0.54,,,0.10,0.18,0.32,0.32,0.45
    565,0.91,,,,1.00,0.34,,,,0.55,,,0.30,0.24,0.33,0.35,0.49
    570,0.83,,,,0.85,0.55,,,,0.57,,,0.43,0.24,0.34,0.37,0.52
    575,,,,,,,,,,,,,,0.26,0.39,0.44,0.59
    580,0.65,,,,0.37,0.96,0.08,,,0.59,,,0.33,0.24,0.42,0.46,0.61
    585,0.61,,,,0.31,1.00,0.19,,,0.60,,,0.40,0.23,0.34,0.39,0.52
    590,0.58,,,,0.24,0.94,0.30,,,0.62,,,0.15,0.24,0.32,0.38,0.51
    595,,,,,,,,,,,,,,0.29,0.30,0.37,0.48
    600,0.50,0.40,,,0.11,0.60,0.80,0.13,,0.64,,0.51,0.46,0.37,0.28,0.34,0.44
    605,,,,,,,,,,,,,,0.30,0.26,0.31,0.41
    608,0.46,,,,,0.56,1.00,0.29,,,,,0.33,,,,
    610,0.45,,,,,0.55,0.97,0.33,,,,,0.32,0.37,0.24,0.29,0.36
    615,,,,,,,,,,,,,,0.33,0.21,0.27,0.33
    620,0.40,0.32,,,,0.20,0.80,0.60,,,,,0.32,0.26,0.19,0.24,0.29
    625,,,,,,,,,,,,,,0.33,0.17,0.21,0.25
    630,0.30,0.28,,,,,0.52,0.95,,,,,0.20,0.25,0.15,0.18,0.22
    634,0.26,,,,,,0.43,1.00,,,,,0.19,,,,
    635,,,,,,,,,,,,,,0.27,0.13,0.16,0.19
    640,0.20,0.25,,,,,0.30,0.90,,,,,0.17,0.27,0.11,0.14,0.16
    645,,,,,,,,,,,,,,0.26,0.10,0.12,0.14
    650,0.15,,,,,,0.20,0.60,,,,,0.16,0.25,0.09,0.10,0.12
    655,,,,,,,,,,,,,,0.31,0.08,0.09,0.10
    660,0.10,,,,,,0.10,0.43,,,,,0.14,0.27,0.07,0.08,0.09
    665,,,,,,,,,,,,,,0.29,0.06,0.07,0.07
    670,0.08,,,,,,,0.30,,,,,0.13,0.24,0.05,0.06,0.06
    675,,,,,,,,,,,,,,0.28,0.05,0.05,0.05
    680,0.05,,,,,,,0.20,,,,,0.11,0.25,0.04,0.05,0.05
    685,,,,,,,,,,,,,,0.37,0.04,0.04,0.04
    690,0.03,,,,,,,0.10,,,,,0.10,0.26,0.03,0.04,0.04
    695,,,,,,,,,,,,,,0.24,0.03,0.03,0.03
    700,,0.24,,,,,,,,0.84,,0.81,0.09,0.26,0.03,0.03,0.03
    705,,,,,,,,,,,,,,0.21,0.02,0.03,0.02
    710,,,,,,,,,,,,,,0.16,0.02,0.02,0.02
    715,,,,,,,,,,,,,,0.15,0.02,0.02,0.02
    720,,0.20,,,,,,,,0.87,,0.84,0.08,0.14,0.02,0.02,0.02
    740,,0.10,,,,,,,,0.90,,0.87,0.06,,,,
    760,,0.08,,,,,,,,0.93,,0.89,0.05,,,,
    770,,,,,,,,,,0.94,,0.90,0.11,,,,
    780,,0.04,,,,,,,,0.96,,0.92,0.05,,,,
    800,,0.02,,,,,,,,0.99,0.03,0.95,0.06,,,,
    810,,,,,,,,,,1.00,0.08,0.96,0.07,,,,
    820,,,,,,,,,,1.00,0.16,0.97,1.00,,,,
    840,,,,,,,,,,1.00,0.38,0.97,0.07,,,,
    860,,,,,,,,,,0.96,0.58,0.98,0.06,,,,
    880,,,,,,,,,,0.91,0.73,0.99,0.05,,,,
    900,,,,,,,,,0.15,0.87,0.81,1.00,,,,,
    910,,,,,,,,,0.37,,,,,,,,
    920,,,,,,,,,0.67,,,,,,,,
    930,,,,,,,,,0.96,,,,,,,,
    935,,,,,,,,,1.00,,,,,,,,
    940,,,,,,,,,0.97,,,,,,,,
    950,,,,,,,,,0.73,,,,,,,,
    960,,,,,,,,,0.45,,,,,,,,
    970,,,,,,,,,0.26,,,,,,,,
    980,,,,,,,,,0.16,,,,,,,,
    1000,,,,,,,,,0.10,0.43,0.89,0.98,,,,,
    1020,,,,,,,,,,0.36,0.90,0.97,,,,,
    1040,,,,,,,,,,0.29,0.91,0.96,,,,,
    1060,,,,,,,,,,0.22,0.91,0.94,,,,,
    1080,,,,,,,,,,0.15,0.92,0.93,,,,,
    1100,,,,,,,,,,0.08,0.93,0.92,,,,,
    
    
  • Chipmunk

    I accidentally-on-purpose spilled some sunflower seeds when I refilled the bird feeder, just to see who was awake. Surprisingly, the seeds remained untouched for about two days, then this fellow appeared… and cleaned them up in a matter of minutes.

    Spring is on its way, despite the recent storms!

    Chipmunk with sunflower seeds
    Chipmunk with sunflower seeds

    Taken with the Sony DSC-H5 zoomed in all the way (12x) through the 1.7x tele-adapter. It’s not a great combination, but it’s better than no picture at all. This is a crop of about the middle half of the image, with a touch of unsharp mask, then scaled down 2:1 for improved webbishness. After all that, it’s a wonder you don’t mistake the critter for a moose…

  • Braille Signage

    I passed a few minutes in the high school lobby (while waiting for the Fencing team to return from a competition) trying to decipher the Braille signs. I’ve always had my doubts about the utility of these things, but I suppose if you’re going to have signs, they may as well have tactile lettering, too.

    Anyhow, what little I knew about Braille (six dots, um, 64 symbols, um, tapers off after that) didn’t extend to actually knowing any of the letters, but how hard could a substitution cipher be? I figured out most of the letters in Stairway quickly, but some were obviously missing. Perhaps Braille includes symbols for common digraphs?

    Stairway
    Stairway

    The Library across the lobby provided more letters, with obvious mismatches that showed I wasn’t anywhere near as clever as I thought (a distressingly common situation these days). Perhaps the two leading dots indicate “Here be there text”?

    Library
    Library

    Then I found the Ticket Booth, which strongly suggested digraph symbols.

    Ticket Booth
    Ticket Booth

    Upon returning home, I did the obvious search and eventually wound up at the Library of Congress Instruction Manual for Braille Transcribing: a short introduction to a very complex subject. Poring through Appendix B provided all the correspondences I needed:

    • The basic alphabet is sorta-kinda decimal
    • Yup, digraphs have their own encoding
    • The two leading dots are a sticky uppercase shift marker
    • Fortunately, I didn’t encounter real contractions
    • There’s an 8-dot variant coming into play

    Some years ago we took an introductory course in American Sign Language when one of my not-quite-a-nephew (son of a cousin, whatever that is) went deaf. Without anyone for day-to-day practice we never achieved fluency, but that was a window into another world, too. We still pass a few basic signs to each other across a noisy room …

    Photography note: photograph signs from far enough off-axis that the flash hotspot on the surface is out of the image. If you must get a rectangular sign out of it, apply a perspective transformation to the image.

  • Red-Tailed Hawk On Watch

    Saw this chap on a walk around the neighborhood.

    It was quite cold (notice his fluffy down coat) and he was content to watch us go by. In fact, it was so cold the crows were just flying by without doing their usual hawk harassment.

    Taken with a Casio ZX-850 pocket camera: no fancy optics. Looks it, too… these are tight crops from much larger images. Click for bigger, but not wonderfully detailed, images.

  • Corelle Sliver

    Mary found a sliver chipped from the outside edge of a Corelle dinner plate, which provides an opportunity to see something that’s normally invisible: the ceramic layer inside its glass coating.

    Overall, the sliver is nearly two inches long and about the same width as the plate is thick.

    Corelle sliver
    Corelle sliver

    Peering through the microscope at the left end, the glass layer is most obvious along the top edge. You can barely see it along the bottom, where the chip thins to a razor edge.

    Corelle sliver - detail
    Corelle sliver – detail

    On the right end the upper and lower glass layers are a bit more obvious, at least with the light arriving nearly horizontally and after some aggressive exposure hackage,

    Corelle sliver - side light
    Corelle sliver – side light

    The ceramic has a slightly higher coefficient of thermal expansion than the glass, so it puts the glass under a tremendous amount of compressive stress as the newly manufactured plate cools. Glass is really strong in compression (and terribly weak in tension), so the plate becomes remarkably hard to break. More details there and there.

    The plate rims do tend to chip, however, if you own them as long as we have. These are the long-discontinued Old Town Blue pattern: over three decades old by now.

    Oddly, they’re still under warranty: back in the day, Corning sold its then-new Corelle with a Lifetime Warranty. Nowadays, you get three years for the mid-grade line, five years for thicker plates, and a mere one year for stoneware (whatever that is). I suppose enough people actually took them up on the warranty to make it economically impractical.

    I ran a fine diamond file over the chipped edge and it’s OK. Eventually, we’ll break down and get new plates, but there’s no sense rushing a decision like that…

  • Icicle Formations at Red Oaks Mill Dam

    The dam at Red Oaks mill has accumulated several large trees over the past year that often serve as perches for birds surveying the pool.

    Waterfall icicles
    Waterfall icicles

    We spotted these ice formations on a recent walk.

    Tree trunk icicle toothbrush
    Tree trunk icicle toothbrush

    The bottom edge of the toothbrush is just inches over the roiling water.

  • Salvaging Old Photos: Gamma Boost

    We’re scanning a bunch of really old photographs to assemble a book of memories for Mary’s father. Most of the images are about what you’d expect for old photos: bad exposures, poor focus, and scratched emulsion. There’s not much you can do to save ’em, but one image really surprised me.

    Scanned at 600 dpi with the black and white points set to maximize the dynamic range, we got this image (reduced resolution for display here).

    Original
    Original

    The original image is somewhat brighter than that: there’s a figure visible in the upper-left, but you can’t see much more.

    After dramatically adjusting the gamma and switching to grayscale mode, her father popped out of the shadows.

    Gamma = 3
    Gamma = 3

    Now, it’s not a great picture, but it’s one of the few we have from that era… and it’s a much better picture than no picture at all!

    A similar trick can recover dull gray snow pictures, as mentioned there.