diff --git a/applications/reconstruct/src/ilw/ilw.cu b/applications/reconstruct/src/ilw/ilw.cu index b33a3e7feba861fa5923e5ddb245812ebe330c70..e9d2049f8b97e63022046d446ea19ffc668bcbd3 100644 --- a/applications/reconstruct/src/ilw/ilw.cu +++ b/applications/reconstruct/src/ilw/ilw.cu @@ -92,9 +92,13 @@ __global__ void correspondence_energy_vector_kernel( // Mix ratio of colour and distance costs const float ccost = 1.0f - ftl::cuda::colourWeighting(colour1, colour2, params.colour_smooth); - if ((params.flags & ftl::cuda::kILWFlag_SkipBadColour) && ccost == 1.0f) continue; - cost = params.cost_ratio * (ccost) + (1.0f - params.cost_ratio) * cost; - //cost /= 2.0f; + if ((params.flags & ftl::cuda::kILWFlag_SkipBadColour) && ccost == 1.0f) continue; + + // Cost eq 1: summed contributions + //cost = params.cost_ratio * (ccost) + (1.0f - params.cost_ratio) * cost; + + // Cost eq 2: Multiplied + cost = ccost * cost * cost * cost; ++count; avgcost += (params.flags & ftl::cuda::kILWFlag_ColourConfidenceOnly) ? ccost : cost;