|
@@ -293,53 +293,54 @@ run_simple_reconstruction (Params *params, gchar **argv)
|
|
|
flat_before_reader = make_task (data->pm, "reader");
|
|
|
flat_before_stack = make_task (data->pm, "stack");
|
|
|
flat_before_median = make_task (data->pm, "flatten");
|
|
|
-
|
|
|
- flat_after_reader = make_task (data->pm, "reader");
|
|
|
- flat_after_stack = make_task (data->pm, "stack");
|
|
|
- flat_after_median = make_task (data->pm, "flatten");
|
|
|
-
|
|
|
- flat_interpolate = make_task (data->pm, "interpolate");
|
|
|
-
|
|
|
dark_reader = make_task (data->pm, "reader");
|
|
|
ffc = make_task (data->pm, "flat-field-correction");
|
|
|
-
|
|
|
copy = UFO_TASK_NODE (ufo_copy_task_new ());
|
|
|
sum = make_task (data->pm, "flatten-inplace");
|
|
|
sum_writer = make_task (data->pm, "writer");
|
|
|
|
|
|
- g_object_set (flat_before_stack, "num-items", 21, NULL);
|
|
|
- g_object_set (flat_after_stack, "num-items", 21, NULL);
|
|
|
-
|
|
|
- g_object_set (ffc,
|
|
|
- "dark-scale", params->dark_scale,
|
|
|
- "absorption-correction", TRUE,
|
|
|
- NULL);
|
|
|
-
|
|
|
sum_name = g_strdup_printf ("%s.sum.tif", params->output);
|
|
|
- g_object_set (sum_writer,
|
|
|
- "filename", sum_name,
|
|
|
- NULL);
|
|
|
- g_free (sum_name);
|
|
|
|
|
|
g_object_set (flat_before_reader, "path", params->flats, NULL);
|
|
|
- g_object_set (flat_after_reader, "path", params->flats_after, NULL);
|
|
|
+ g_object_set (flat_before_stack, "num-items", 21, NULL);
|
|
|
g_object_set (dark_reader, "path", params->darks, NULL);
|
|
|
+ g_object_set (sum_writer, "filename", sum_name, NULL);
|
|
|
+
|
|
|
+ g_object_set (ffc, "dark-scale", params->dark_scale,
|
|
|
+ "absorption-correction", TRUE,
|
|
|
+ NULL);
|
|
|
+
|
|
|
+ g_free (sum_name);
|
|
|
|
|
|
ufo_task_graph_connect_nodes (data->graph, flat_before_reader, flat_before_stack);
|
|
|
ufo_task_graph_connect_nodes (data->graph, flat_before_stack, flat_before_median);
|
|
|
- ufo_task_graph_connect_nodes (data->graph, flat_after_reader, flat_after_stack);
|
|
|
- ufo_task_graph_connect_nodes (data->graph, flat_after_stack, flat_after_median);
|
|
|
- ufo_task_graph_connect_nodes_full (data->graph, flat_before_median, flat_interpolate, 0);
|
|
|
- ufo_task_graph_connect_nodes_full (data->graph, flat_after_median, flat_interpolate, 1);
|
|
|
-
|
|
|
ufo_task_graph_connect_nodes_full (data->graph, radio_reader, ffc, 0);
|
|
|
ufo_task_graph_connect_nodes_full (data->graph, dark_reader, ffc, 1);
|
|
|
- ufo_task_graph_connect_nodes_full (data->graph, flat_interpolate, ffc, 2);
|
|
|
- ufo_task_graph_connect_nodes (data->graph, ffc, copy);
|
|
|
+ ufo_task_graph_connect_nodes (data->graph, ffc, data->pad);
|
|
|
+ /* ufo_task_graph_connect_nodes (data->graph, ffc, copy); */
|
|
|
+ /* ufo_task_graph_connect_nodes_full (data->graph, copy, sum, 0); */
|
|
|
+ /* ufo_task_graph_connect_nodes_full (data->graph, copy, data->pad, 0); */
|
|
|
+ /* ufo_task_graph_connect_nodes (data->graph, sum, sum_writer); */
|
|
|
|
|
|
- ufo_task_graph_connect_nodes (data->graph, copy, data->pad);
|
|
|
- ufo_task_graph_connect_nodes (data->graph, copy, sum);
|
|
|
- ufo_task_graph_connect_nodes (data->graph, sum, sum_writer);
|
|
|
+ if (params->flats_after != NULL) {
|
|
|
+ flat_after_reader = make_task (data->pm, "reader");
|
|
|
+ flat_after_stack = make_task (data->pm, "stack");
|
|
|
+ flat_after_median = make_task (data->pm, "flatten");
|
|
|
+
|
|
|
+ flat_interpolate = make_task (data->pm, "interpolate");
|
|
|
+
|
|
|
+ g_object_set (flat_after_reader, "path", params->flats_after, NULL);
|
|
|
+ g_object_set (flat_after_stack, "num-items", 21, NULL);
|
|
|
+
|
|
|
+ ufo_task_graph_connect_nodes (data->graph, flat_after_reader, flat_after_stack);
|
|
|
+ ufo_task_graph_connect_nodes (data->graph, flat_after_stack, flat_after_median);
|
|
|
+ ufo_task_graph_connect_nodes_full (data->graph, flat_before_median, flat_interpolate, 0);
|
|
|
+ ufo_task_graph_connect_nodes_full (data->graph, flat_after_median, flat_interpolate, 1);
|
|
|
+ ufo_task_graph_connect_nodes_full (data->graph, flat_interpolate, ffc, 2);
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ ufo_task_graph_connect_nodes_full (data->graph, flat_before_median, ffc, 2);
|
|
|
+ }
|
|
|
}
|
|
|
else {
|
|
|
warn ("> No flat/dark field correction\n");
|
|
@@ -364,13 +365,16 @@ run_simple_reconstruction (Params *params, gchar **argv)
|
|
|
g_object_unref (flat_before_reader);
|
|
|
g_object_unref (flat_before_stack);
|
|
|
g_object_unref (flat_before_median);
|
|
|
- g_object_unref (flat_after_reader);
|
|
|
- g_object_unref (flat_after_stack);
|
|
|
- g_object_unref (flat_after_median);
|
|
|
g_object_unref (dark_reader);
|
|
|
g_object_unref (copy);
|
|
|
g_object_unref (sum);
|
|
|
g_object_unref (sum_writer);
|
|
|
+
|
|
|
+ if (params->flats_after) {
|
|
|
+ g_object_unref (flat_after_reader);
|
|
|
+ g_object_unref (flat_after_stack);
|
|
|
+ g_object_unref (flat_after_median);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -473,38 +477,43 @@ run_cached_reconstruction (Params *params, gchar **argv)
|
|
|
flat_before_reader = make_task (data->pm, "reader");
|
|
|
flat_before_stack = make_task (data->pm, "stack");
|
|
|
flat_before_median = make_task (data->pm, "flatten");
|
|
|
-
|
|
|
- flat_after_reader = make_task (data->pm, "reader");
|
|
|
- flat_after_stack = make_task (data->pm, "stack");
|
|
|
- flat_after_median = make_task (data->pm, "flatten");
|
|
|
-
|
|
|
- flat_interpolate = make_task (data->pm, "interpolate");
|
|
|
dark_reader = make_task (data->pm, "reader");
|
|
|
ffc = make_task (data->pm, "flat-field-correction");
|
|
|
|
|
|
+ g_object_set (dark_reader, "path", params->darks, NULL);
|
|
|
+ g_object_set (flat_before_reader, "path", params->flats, NULL);
|
|
|
g_object_set (flat_before_stack, "num-items", 21, NULL);
|
|
|
- g_object_set (flat_after_stack, "num-items", 21, NULL);
|
|
|
|
|
|
g_object_set (ffc,
|
|
|
"dark-scale", params->dark_scale,
|
|
|
"absorption-correction", TRUE,
|
|
|
NULL);
|
|
|
|
|
|
- g_object_set (flat_before_reader, "path", params->flats, NULL);
|
|
|
- g_object_set (flat_after_reader, "path", params->flats_after, NULL);
|
|
|
- g_object_set (dark_reader, "path", params->darks, NULL);
|
|
|
-
|
|
|
ufo_task_graph_connect_nodes (read_graph, flat_before_reader, flat_before_stack);
|
|
|
ufo_task_graph_connect_nodes (read_graph, flat_before_stack, flat_before_median);
|
|
|
- ufo_task_graph_connect_nodes (read_graph, flat_after_reader, flat_after_stack);
|
|
|
- ufo_task_graph_connect_nodes (read_graph, flat_after_stack, flat_after_median);
|
|
|
- ufo_task_graph_connect_nodes_full (read_graph, flat_before_median, flat_interpolate, 0);
|
|
|
- ufo_task_graph_connect_nodes_full (read_graph, flat_after_median, flat_interpolate, 1);
|
|
|
-
|
|
|
ufo_task_graph_connect_nodes_full (read_graph, radio_reader, ffc, 0);
|
|
|
ufo_task_graph_connect_nodes_full (read_graph, dark_reader, ffc, 1);
|
|
|
- ufo_task_graph_connect_nodes_full (read_graph, flat_interpolate, ffc, 2);
|
|
|
ufo_task_graph_connect_nodes (read_graph, ffc, data->output);
|
|
|
+
|
|
|
+ if (params->flats_after) {
|
|
|
+ flat_after_reader = make_task (data->pm, "reader");
|
|
|
+ flat_after_stack = make_task (data->pm, "stack");
|
|
|
+ flat_after_median = make_task (data->pm, "flatten");
|
|
|
+
|
|
|
+ flat_interpolate = make_task (data->pm, "interpolate");
|
|
|
+
|
|
|
+ g_object_set (flat_after_stack, "num-items", 21, NULL);
|
|
|
+ g_object_set (flat_after_reader, "path", params->flats_after, NULL);
|
|
|
+
|
|
|
+ ufo_task_graph_connect_nodes (read_graph, flat_after_reader, flat_after_stack);
|
|
|
+ ufo_task_graph_connect_nodes (read_graph, flat_after_stack, flat_after_median);
|
|
|
+ ufo_task_graph_connect_nodes_full (read_graph, flat_before_median, flat_interpolate, 0);
|
|
|
+ ufo_task_graph_connect_nodes_full (read_graph, flat_after_median, flat_interpolate, 1);
|
|
|
+ ufo_task_graph_connect_nodes_full (read_graph, flat_interpolate, ffc, 2);
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ ufo_task_graph_connect_nodes_full (read_graph, flat_before_median, ffc, 2);
|
|
|
+ }
|
|
|
}
|
|
|
else {
|
|
|
warn ("> No flat/dark field correction\n");
|
|
@@ -529,10 +538,13 @@ run_cached_reconstruction (Params *params, gchar **argv)
|
|
|
g_object_unref (flat_before_reader);
|
|
|
g_object_unref (flat_before_stack);
|
|
|
g_object_unref (flat_before_median);
|
|
|
- g_object_unref (flat_after_reader);
|
|
|
- g_object_unref (flat_after_stack);
|
|
|
- g_object_unref (flat_after_median);
|
|
|
g_object_unref (dark_reader);
|
|
|
+
|
|
|
+ if (params->flats_after) {
|
|
|
+ g_object_unref (flat_after_reader);
|
|
|
+ g_object_unref (flat_after_stack);
|
|
|
+ g_object_unref (flat_after_median);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|