Index: trunk/stac/src/stac.c
===================================================================
--- trunk/stac/src/stac.c	(revision 2751)
+++ trunk/stac/src/stac.c	(revision 2764)
@@ -72,6 +72,20 @@
 #endif
 
+    // Get regions of interest in the source frame
+    psArray *regions = psArrayAlloc(inputs->n); // Array of images denoting regions of interest
+    for (int i = 0; i < inputs->n; i++) {
+	fprintf(stderr, "Finding area of interest for image %d\n", i);
+	regions->data[i] = stacAreaOfInterest(rejected->data[i], inverseMaps->data[i],
+					      ((psImage*)(inputs->data[i]))->numCols,
+					      ((psImage*)(inputs->data[i]))->numRows);
+#ifdef TESTING
+	char regionFile[MAXCHAR];	// Filename of region image
+	sprintf(regionFile,"%s.region",config->inputs->data[i]);
+	psImageWriteSection(regions->data[i], 0, 0, 0, NULL, 0, regionFile);
+#endif
+    }
+
     // Transform rejected pixels to source frame
-    psArray *rejectedSource = stacRejection(inputs, transformed, combined, maps, inverseMaps, rejected, config);
+    psArray *rejectedSource = stacRejection(inputs, rejected, regions, maps, inverseMaps, config);
 
     // Redo transformation with the mask
@@ -93,4 +107,5 @@
     // Free everything I've used
     stacConfigFree(config);
+    psFree(regions);
     psFree(inputs);
     psFree(maps);
