Cleanup image processing example script.
diff --git a/libs/rs/java/ImageProcessing/res/raw/threshold.rs b/libs/rs/java/ImageProcessing/res/raw/threshold.rs
index ad4dbd5..72f12355 100644
--- a/libs/rs/java/ImageProcessing/res/raw/threshold.rs
+++ b/libs/rs/java/ImageProcessing/res/raw/threshold.rs
@@ -5,38 +5,26 @@
     char a;
 };
 
-void filter(struct color_s *in, struct color_s *out, struct vecF32_3_s *luminanceVector) {
-    struct vecF32_3_s pixel;
-    pixel.x = (in->r & 0xFF) / 255.0f;
-    pixel.y = (in->g & 0xFF) / 255.0f;
-    pixel.z = (in->b & 0xFF) / 255.0f;
-
-    float luminance = vec3Dot(luminanceVector, &pixel);
-    luminance = maxf(0.0f, luminance - Params->threshold);
-    vec3Scale(&pixel, signf(luminance));
-
-    out->a = in->a;
-    out->r = pixel.x * 255.0f;
-    out->g = pixel.y * 255.0f;
-    out->b = pixel.z * 255.0f;
-}
-
 void main() {
     int t = uptimeMillis();
 
     struct color_s *in = (struct color_s *) InPixel;
     struct color_s *out = (struct color_s *) OutPixel;
 
-    struct vecF32_3_s luminanceVector;
-    luminanceVector.x = 0.2125f;
-    luminanceVector.y = 0.7154f;
-    luminanceVector.z = 0.0721f;
-
     int count = Params->inWidth * Params->inHeight;
     int i;
+    float threshold = (Params->threshold * 255.f);
 
     for (i = 0; i < count; i++) {
-        filter(in, out, &luminanceVector);
+        float luminance = 0.2125f * in->r +
+                          0.7154f * in->g +
+                          0.0721f * in->b;
+        luminance = maxf(0.0f, luminance - threshold);
+        vec3Scale(&pixel, luminance > 0);
+        out->a = in->a;
+        out->r = pixel.x;
+        out->g = pixel.y;
+        out->b = pixel.z;
 
         in++;
         out++;