Index: trunk/pswarp/src/pswarpLoop.c
===================================================================
--- trunk/pswarp/src/pswarpLoop.c	(revision 18068)
+++ trunk/pswarp/src/pswarpLoop.c	(revision 18179)
@@ -253,4 +253,21 @@
     }
 
+    // Set variance factor
+    {
+        float varFactor = psMetadataLookupF32(NULL, output->analysis, PSWARP_ANALYSIS_VARFACTOR);
+        psAssert(isfinite(varFactor), "Should be something here.");
+        long goodPix = psMetadataLookupS64(NULL, output->analysis, PSWARP_ANALYSIS_GOODPIX);
+        psAssert(goodPix > 0, "Should be something here.");
+        varFactor /= goodPix;
+
+        psMetadataItem *vfItem = psMetadataLookup(outCell->concepts, "CELL.VARFACTOR"); // Item to update
+        psAssert(vfItem && vfItem->type == PS_TYPE_F64, "Concept should be as specified.");
+        if (!isfinite(vfItem->data.F64)) {
+            vfItem->data.F64 = varFactor;
+        } else {
+            vfItem->data.F64 *= varFactor;
+        }
+    }
+
     if (!pmConceptsAverageCells(outCell, cells, NULL, NULL, false)) {
         psError(PS_ERR_UNKNOWN, false, "Unable to average cell concepts.");
