projects
/
ctsim.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
r124: *** empty log message ***
[ctsim.git]
/
src
/
if-2.cpp
diff --git
a/src/if-2.cpp
b/src/if-2.cpp
index 0d35a125b57cf203cc640ea71250436fbac9ae83..545920ad0d74475310afc64ef449a6dd2e05d3bf 100644
(file)
--- a/
src/if-2.cpp
+++ b/
src/if-2.cpp
@@
-9,7
+9,7
@@
** This is part of the CTSim program
** Copyright (C) 1983-2000 Kevin Rosenberg
**
** This is part of the CTSim program
** Copyright (C) 1983-2000 Kevin Rosenberg
**
-** $Id: if-2.cpp,v 1.
6 2000/06/19 17:58:13
kevin Exp $
+** $Id: if-2.cpp,v 1.
9 2000/06/28 15:25:34
kevin Exp $
**
** This program is free software; you can redistribute it and/or modify
** it under the terms of the GNU General Public License (version 2) as
**
** This program is free software; you can redistribute it and/or modify
** it under the terms of the GNU General Public License (version 2) as
@@
-30,6
+30,7
@@
*/
#include "ct.h"
*/
#include "ct.h"
+#include "timer.h"
enum {O_ADD, O_SUB, O_MUL, O_COMP, O_VERBOSE, O_HELP, O_VERSION};
enum {O_ADD, O_SUB, O_MUL, O_COMP, O_VERBOSE, O_HELP, O_VERSION};
@@
-78,6
+79,8
@@
if2_main (int argc, char *const argv[])
int opt_mul = 0;
int opt_comp = 0;
int opt_mul = 0;
int opt_comp = 0;
+ Timer timerProgram;
+
while (1) {
int c = getopt_long (argc, argv, "", my_options, NULL);
while (1) {
int c = getopt_long (argc, argv, "", my_options, NULL);
@@
-126,12
+129,12
@@
if2_main (int argc, char *const argv[])
in_file2 = argv[optind + 1];
out_file = argv[optind + 2];
in_file2 = argv[optind + 1];
out_file = argv[optind + 2];
- pim_in1 = new ImageFile (
in_file1
);
- pim_in2 = new ImageFile (
in_file2
);
+ pim_in1 = new ImageFile ();
+ pim_in2 = new ImageFile ();
ImageFile& im_in1 = *pim_in1;
ImageFile& im_in2 = *pim_in2;
ImageFile& im_in1 = *pim_in1;
ImageFile& im_in2 = *pim_in2;
- if (! im_in1.fileRead(
) || ! im_in2.fileRead(
)) {
+ if (! im_in1.fileRead(
in_file1) || ! im_in2.fileRead(in_file2
)) {
sys_error (ERR_WARNING, "Error reading an image");
return (1);
}
sys_error (ERR_WARNING, "Error reading an image");
return (1);
}
@@
-146,12
+149,8
@@
if2_main (int argc, char *const argv[])
return(1);
}
return(1);
}
- pim_out = new ImageFile (
out_file,
im_in1.nx(), im_in1.ny());
+ pim_out = new ImageFile (im_in1.nx(), im_in1.ny());
ImageFile& im_out = *pim_out;
ImageFile& im_out = *pim_out;
- if (! im_out.fileCreate()) {
- sys_error (ERR_WARNING, "Could not open output file %s", out_file);
- return (1);
- }
string strOperation;
ImageFileArray v1 = im_in1.getArray();
string strOperation;
ImageFileArray v1 = im_in1.getArray();
@@
-195,19
+194,18
@@
if2_main (int argc, char *const argv[])
for (int iy = 0; iy < im_in1.ny(); iy++) {
double diff = *in1++ - *in2++;
*out++ = diff;
for (int iy = 0; iy < im_in1.ny(); iy++) {
double diff = *in1++ - *in2++;
*out++ = diff;
- abs_error += fabs(diff);
}
}
}
}
- abs_error /= (im_in1.nx() * im_in1.ny());
- cout << "Average Error: " << abs_error << endl;
+ double d, r, e;
+ im_in1.comparativeStatistics (im_in2, d, r, e);
+ cout << "d=" << d << ", r=" << r << ", e=" << e << endl;
}
}
- im_out.arrayDataWrite();
im_out.labelsCopy (im_in1, "if-2 file 1: ");
im_out.labelsCopy (im_in2, "if-2 file 2: ");
im_out.labelsCopy (im_in1, "if-2 file 1: ");
im_out.labelsCopy (im_in2, "if-2 file 2: ");
- im_out.labelAdd (Array2dFileLabel::L_HISTORY, strOperation.c_str());
+ im_out.labelAdd (Array2dFileLabel::L_HISTORY, strOperation.c_str()
, timerProgram.timerEnd()
);
- im_out.file
Close(
);
+ im_out.file
Write(out_file
);
return (0);
}
return (0);
}