Project 1: Color Alignment
cs195-g: Computational Photography Patrick Doran
Spring 2010 pdoran
Directory
Metric: Sobel filter each level then NCC
The results on this page were computed by applying an image derivative filter at each level of the multiscale image and then computing the normalized cross correlation between the images. Unlike the sum of squared differences version of this, this measures how close the two images are by means of a dot product. The dot product will not be as greatly affected by large values for edges as the SSD will be since the vectors are normalized first. This metric should perform poorly on images where there aren't strong edges to line up. This worked slightly better the Sobel with SSD, see image 7 - 00398v.jpg
Results
Stats Legend
     image ##: file name
         size: [ vertical x horizontal ]
  green->blue: shift [ vertical, horizontal ]
    red->blue: shift [ vertical, horizontal ]
       border: crop [ top, left, bottom, right ]
         gray: [ 'assumed' gray value ]
      balance: scale [ red, green, blue ]
   normalizer: [ normalizes rgb values ]
          hue: threshold [ low, high ]
   saturation: threshold [ low, high ]
        value: threshold [ low, high ] 
Original Stats Without White Balance With White Balance

Full Size
Without white balance:
     image 01: 00125v.jpg
         size: [ 341 x 400 ]
  green->blue: [      5,      2 ]
    red->blue: [     10,      1 ]
       border: [     26,     26,    339,    387 ]
          hue: [ 0.0000, 0.9989 ]
   saturation: [ 0.1607, 0.8283 ]
        value: [ 0.1686, 0.9059 ]
With white balance:
         gray: [ 118.37 ]
      balance: [ 1.2200, 0.8562, 0.9878 ]
   normalizer: [ 311.10 ]
          hue: [ 0.0000, 0.9989 ]
   saturation: [ 0.1023, 0.8472 ]
        value: [ 0.1412, 0.7451 ] 

Full Size

Full Size

Full Size
Without white balance:
     image 02: 00149v.jpg
         size: [ 341 x 397 ]
  green->blue: [      4,      2 ]
    red->blue: [      9,      2 ]
       border: [     27,     26,    324,    378 ]
          hue: [ 0.0000, 0.9987 ]
   saturation: [ 0.0202, 0.8219 ]
        value: [ 0.1255, 0.9804 ]
With white balance:
         gray: [ 133.45 ]
      balance: [ 0.8946, 1.0635, 1.0617 ]
   normalizer: [ 271.19 ]
          hue: [ 0.0000, 0.9983 ]
   saturation: [ 0.0314, 0.8219 ]
        value: [ 0.1176, 0.9647 ]

Full Size

Full Size

Full Size
Without white balance:
     image 03: 00153v.jpg
         size: [ 341 x 394 ]
  green->blue: [      7,      3 ]
    red->blue: [      5,      5 ]
       border: [     11,     31,    327,    381 ]
          hue: [ 0.0000, 0.9990 ]
   saturation: [ 0.1064, 0.9752 ]
        value: [ 0.3725, 0.9020 ]
With white balance:
         gray: [ 147.28 ]
      balance: [ 0.8229, 0.9987, 1.2763 ]
   normalizer: [ 319.07 ]
          hue: [ 0.0000, 0.9985 ]
   saturation: [ 0.0171, 0.9677 ]
        value: [ 0.2941, 0.8118 ]

Full Size

Full Size

Full Size
Without white balance:
     image 04: 00154v.jpg
         size: [ 341 x 398 ]
  green->blue: [      5,      0 ]
    red->blue: [     11,     -2 ]
       border: [      1,     25,    333,    381 ]
          hue: [ 0.0000, 0.9991 ]
   saturation: [ 0.0860, 0.9550 ]
        value: [ 0.2039, 0.9686 ]
With white balance:
         gray: [ 140.75 ]
      balance: [ 0.8407, 0.9059, 1.4150 ]
   normalizer: [ 359.40 ]
          hue: [ 0.0000, 0.9985 ]
   saturation: [ 0.0388, 0.9419 ]
        value: [ 0.1255, 0.9725 ]

Full Size

Full Size

Full Size
Without white balance:
     image 05: 00163v.jpg
         size: [ 341 x 387 ]
  green->blue: [     -3,      1 ]
    red->blue: [     -4,      1 ]
       border: [     54,     10,    329,    377 ]
          hue: [ 0.0000, 0.9986 ]
   saturation: [ 0.0131, 0.9211 ]
        value: [ 0.1255, 0.9686 ]
With white balance:
         gray: [ 107.87 ]
      balance: [ 0.9738, 0.9797, 1.0500 ]
   normalizer: [ 267.75 ]
          hue: [ 0.0000, 0.9989 ]
   saturation: [ 0.0494, 0.9167 ]
        value: [ 0.1216, 0.9686 ]

Full Size

Full Size

Full Size
Without white balance:
     image 06: 00270v.jpg
         size: [ 341 x 404 ]
  green->blue: [      3,      0 ]
    red->blue: [     12,      1 ]
       border: [     16,     25,    330,    378 ]
          hue: [ 0.0000, 0.9986 ]
   saturation: [ 0.0686, 0.9189 ]
        value: [ 0.0863, 0.9569 ]
With white balance:
         gray: [ 125.41 ]
      balance: [ 1.2053, 0.9815, 0.8685 ]
   normalizer: [ 296.51 ]
          hue: [ 0.0000, 0.9987 ]
   saturation: [ 0.0168, 0.9082 ]
        value: [ 0.0745, 0.8235 ]

Full Size

Full Size

Full Size
Without white balance:
     image 07: 00398v.jpg
         size: [ 341 x 397 ]
  green->blue: [      5,      3 ]
    red->blue: [     11,      4 ]
       border: [     23,     19,    340,    375 ]
          hue: [ 0.0000, 0.9984 ]
   saturation: [ 0.0177, 0.6962 ]
        value: [ 0.1451, 0.9569 ]
With white balance:
         gray: [ 166.80 ]
      balance: [ 0.9303, 1.0079, 1.0719 ]
   normalizer: [ 273.34 ]
          hue: [ 0.0000, 0.9981 ]
   saturation: [ 0.0702, 0.6667 ]
        value: [ 0.1255, 0.9569 ]

Full Size

Full Size

Full Size
Without white balance:
     image 08: 00458u.jpg
         size: [ 3238 x 3741 ]
  green->blue: [     42,      2 ]
    red->blue: [     86,     29 ]
       border: [    210,     65,   3178,   3695 ]
          hue: [ 0.0000, 0.9993 ]
   saturation: [ 0.0000, 0.9959 ]
        value: [ 0.0588, 0.9647 ]
With white balance:
         gray: [ 164.77 ]
      balance: [ 0.9942, 1.0106, 0.9954 ]
   normalizer: [ 252.64 ]
          hue: [ 0.0000, 0.9993 ]
   saturation: [ 0.0081, 0.9959 ]
        value: [ 0.0588, 0.9804 ]

Full Size

Full Size

Full Size
Without white balance:
     image 09: 00564v.jpg
         size: [ 341 x 392 ]
  green->blue: [      5,      1 ]
    red->blue: [     11,      0 ]
       border: [     11,     18,    328,    370 ]
          hue: [ 0.0000, 0.9979 ]
   saturation: [ 0.0465, 0.8902 ]
        value: [ 0.0941, 0.9686 ]
With white balance:
         gray: [ 107.29 ]
      balance: [ 1.1682, 0.8959, 0.9730 ]
   normalizer: [ 297.88 ]
          hue: [ 0.0000, 0.9986 ]
   saturation: [ 0.0889, 0.8788 ]
        value: [ 0.0824, 0.8118 ]

Full Size

Full Size

Full Size
Without white balance:
     image 10: 00911u.jpg
         size: [ 3254 x 3768 ]
  green->blue: [     14,     -9 ]
    red->blue: [    126,    -15 ]
       border: [    218,     30,   3225,   3714 ]
          hue: [ 0.0000, 0.9992 ]
   saturation: [ 0.0165, 0.9451 ]
        value: [ 0.0941, 0.9569 ]
With white balance:
         gray: [ 157.26 ]
      balance: [ 0.9844, 1.0049, 1.0110 ]
   normalizer: [ 250.73 ]
          hue: [ 0.0000, 0.9992 ]
   saturation: [ 0.0285, 0.9474 ]
        value: [ 0.0941, 0.9843 ]

Full Size

Full Size

Full Size
Without white balance:
     image 11: 01043u.jpg
         size: [ 3202 x 3712 ]
  green->blue: [    -15,     10 ]
    red->blue: [     10,     20 ]
       border: [     97,    157,   3157,   3555 ]
          hue: [ 0.0000, 0.9992 ]
   saturation: [ 0.0352, 0.8745 ]
        value: [ 0.1725, 0.9216 ]
With white balance:
         gray: [ 113.87 ]
      balance: [ 0.8338, 1.1544, 1.0701 ]
   normalizer: [ 289.75 ]
          hue: [ 0.0000, 0.9988 ]
   saturation: [ 0.0426, 0.8512 ]
        value: [ 0.1333, 0.8745 ]

Full Size

Full Size

Full Size
Without white balance:
     image 12: 01047u.jpg
         size: [ 3218 x 3741 ]
  green->blue: [     26,     20 ]
    red->blue: [     71,     33 ]
       border: [     88,    182,   3192,   3552 ]
          hue: [ 0.0000, 0.9990 ]
   saturation: [ 0.0795, 0.7722 ]
        value: [ 0.1725, 0.8510 ]
With white balance:
         gray: [ 106.37 ]
      balance: [ 0.8499, 1.1512, 1.0475 ]
   normalizer: [ 291.24 ]
          hue: [ 0.0000, 0.9985 ]
   saturation: [ 0.0222, 0.7730 ]
        value: [ 0.1294, 0.8078 ]

Full Size

Full Size

Full Size
Without white balance:
     image 13: 01167v.jpg
         size: [ 341 x 394 ]
  green->blue: [      5,      0 ]
    red->blue: [     12,     -2 ]
       border: [     11,     14,    329,    369 ]
          hue: [ 0.0000, 0.9973 ]
   saturation: [ 0.0340, 0.7737 ]
        value: [ 0.2706, 0.9255 ]
With white balance:
         gray: [ 151.76 ]
      balance: [ 1.2603, 0.9171, 0.8960 ]
   normalizer: [ 321.38 ]
          hue: [ 0.0000, 0.9979 ]
   saturation: [ 0.0276, 0.7348 ]
        value: [ 0.2118, 0.8902 ]

Full Size

Full Size

Full Size
Without white balance:
     image 14: 01657u.jpg
         size: [ 3212 x 3761 ]
  green->blue: [     56,      9 ]
    red->blue: [    120,     13 ]
       border: [    111,    181,   3090,   3644 ]
          hue: [ 0.0000, 0.9990 ]
   saturation: [ 0.0500, 0.8915 ]
        value: [ 0.2000, 0.9529 ]
With white balance:
         gray: [ 124.11 ]
      balance: [ 0.9058, 1.1400, 0.9815 ]
   normalizer: [ 279.30 ]
          hue: [ 0.0000, 0.9989 ]
   saturation: [ 0.0294, 0.8852 ]
        value: [ 0.1725, 0.9216 ]

Full Size

Full Size

Full Size
Without white balance:
     image 15: 01861a.jpg
         size: [ 3228 x 3741 ]
  green->blue: [     71,     39 ]
    red->blue: [     83,     64 ]
       border: [    152,    126,   3181,   3614 ]
          hue: [ 0.0000, 0.9992 ]
   saturation: [ 0.0163, 0.8634 ]
        value: [ 0.1843, 0.9569 ]
With white balance:
         gray: [ 142.47 ]
      balance: [ 0.8907, 0.9914, 1.1513 ]
   normalizer: [ 293.58 ]
          hue: [ 0.0000, 0.9989 ]
   saturation: [ 0.0270, 0.8571 ]
        value: [ 0.1647, 0.9412 ]

Full Size

Full Size

Full Size
Without white balance:
     image 16: 31421v.jpg
         size: [ 341 x 398 ]
  green->blue: [      8,      0 ]
    red->blue: [     13,      0 ]
       border: [     11,     20,    310,    377 ]
          hue: [ 0.0000, 0.9967 ]
   saturation: [ 0.0463, 0.8462 ]
        value: [ 0.0627, 0.8510 ]
With white balance:
         gray: [ 137.38 ]
      balance: [ 1.0968, 1.0633, 0.8712 ]
   normalizer: [ 239.10 ]
          hue: [ 0.0000, 0.9977 ]
   saturation: [ 0.0154, 0.8611 ]
        value: [ 0.0667, 0.9020 ]

Full Size

Full Size