668e7590349d90bc2094667d5a9f8e618bbbdd0f
3 void test_contrastImg(const TestData
* testdata
){
6 // difference between michelson and absolute differences from mean
7 // is large for 100x100 at 500,300
11 fprintf(stderr
,"********** Contrast:\n");
12 int numruns
= NUMCNTR
;
13 double contrastC
[numruns
];
14 double contrastOpt
[numruns
];
17 fprintf(stderr
,"********** Variance - based Contrast (with ORC):\n");
19 int start
= timeOfDayinMS();
20 for(i
=0; i
<numruns
; i
++){
21 contrastC
[i
]=contrastSubImg_variance_C(testdata
->frames
[0],
22 &f
, testdata
->fi
.width
, testdata
->fi
.height
);
24 int end
= timeOfDayinMS();
26 fprintf(stderr
,"***C time for %i runs: %i ms ****\n", numruns
, timeC
);
29 int start
= timeOfDayinMS();
30 for(i
=0; i
<numruns
; i
++){
31 contrastOpt
[i
]=contrastSubImg_variance_orc(testdata
->frames
[0],
32 &f
, testdata
->fi
.width
, testdata
->fi
.height
);
34 int end
= timeOfDayinMS();
36 fprintf(stderr
,"***Orc time for %i runs: %i ms ****\n", numruns
, timeOpt
);
38 fprintf(stderr
,"***Speedup %3.2f\n", timeC
/timeOpt
);
39 for(i
=0; i
<numruns
; i
++){
41 printf("Orc contrast %3.2f, C contrast %3.2f\n",contrastOpt
[i
], contrastC
[i
]);
43 test_bool(contrastC
[i
]==contrastOpt
[i
]);
46 fprintf(stderr
,"********** Michelson Contrast (with SSE2):\n");
48 int start
= timeOfDayinMS();
49 for(i
=0; i
<numruns
; i
++){
50 contrastC
[i
]=contrastSubImg(testdata
->frames
[0].data
[0],
51 &f
, testdata
->fi
.width
, testdata
->fi
.height
,1);
53 int end
= timeOfDayinMS();
55 fprintf(stderr
,"***C time for %i runs: %i ms ****\n", numruns
, timeC
);
59 int start
= timeOfDayinMS();
60 for(i
=0; i
<numruns
; i
++){
61 contrastOpt
[i
]=contrastSubImg1_SSE(testdata
->frames
[0].data
[0],
62 &f
, testdata
->fi
.width
, testdata
->fi
.height
);
64 int end
= timeOfDayinMS();
66 fprintf(stderr
,"***SSE2 time for %i runs: %i ms ****\n", numruns
, timeOpt
);
68 fprintf(stderr
,"***Speedup %3.2f\n", (float)timeC
/(float)timeOpt
);
69 for(i
=0; i
<numruns
; i
++){
71 printf("SSE2 contrast %3.2f, C contrast %3.2f\n",contrastOpt
[i
], contrastC
[i
]);
73 test_bool(contrastC
[i
]==contrastOpt
[i
]);