Project 1: Color Alignment
cs195-g: Computational Photography Patrick Doran
Spring 2010 pdoran
Directory
Metric: Sobel filter each level then SSD
The results on this page were computed by applying an image derivative filter at each level of the multiscale image and then computing the sum of squared differences between the images. The filter in this case was a Sobel filter applied in the vertical and horizontal directions. The vertically filter and horizontally filtered images are squared and then added together to create the image derivative. This highlights the edges in the images as large values and non-edges as low values. The idea here is that edges are more likely to exist across all color channels. This metric worked as well as the SSD and NCC and had the same problems that they exhibited. It is likely that, as a result of scaling, the smaller images lose their edges or they get blended together, so this may not be the best approach. It might be better to create the image derivative, and then scale the image. Another problem that could happen is the borders of the image will have large image derivative values and so will likely dominate the distance function. This could be fixed by ignoring the border (which I do anyway). This metric should perform poorly on images where there aren't strong edges to line up. This did not work as well as SSD or NCC using the same algorithm parameters (window size, scale depth, etc.), 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: [     10,     -4 ]
       border: [     23,      9,    340,    371 ]
          hue: [ 0.0000, 0.9991 ]
   saturation: [ 0.0217, 0.9333 ]
        value: [ 0.1647, 0.9922 ]
With white balance:
         gray: [ 165.87 ]
      balance: [ 0.9273, 1.0033, 1.0813 ]
   normalizer: [ 275.74 ]
          hue: [ 0.0000, 0.9988 ]
   saturation: [ 0.0773, 0.9319 ]
        value: [ 0.1451, 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