2017-07-23 22:53:02 +00:00
|
|
|
#include <iostream>
|
|
|
|
|
|
2017-08-06 19:12:44 +00:00
|
|
|
#include "colorchecker.h"
|
2017-08-07 04:32:01 +00:00
|
|
|
#include "lut.h"
|
2017-08-06 19:39:11 +00:00
|
|
|
#include "piraw.h"
|
|
|
|
|
#include "util.h"
|
2017-07-23 22:53:02 +00:00
|
|
|
|
|
|
|
|
int main() {
|
2017-08-06 19:55:31 +00:00
|
|
|
auto image = PiRaw2::FromJpeg(ReadFile("test.jpg"));
|
2017-08-10 13:51:39 -07:00
|
|
|
std::cout << "Initial score: " << ScoreImage(*image) << std::endl;
|
|
|
|
|
|
2017-08-08 23:14:11 -07:00
|
|
|
auto lut = MinimalLut3d::Identity();
|
2017-08-10 13:51:39 -07:00
|
|
|
uint32_t diff = 1;
|
|
|
|
|
while (diff) {
|
|
|
|
|
diff = OptimizeLut<4>(*image, &lut);
|
|
|
|
|
std::cout << "diff=" << diff << " error=" << ScoreImage(*lut.MapImage(*image)) << std::endl;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
auto image2 = lut.MapImage(*image);
|
2017-08-08 23:32:28 -07:00
|
|
|
WriteFile("test.png", HighlightClosest(*image2)->ToPng());
|
2017-07-23 22:53:02 +00:00
|
|
|
}
|