Revision: 57286
http://sourceforge.net/p/brlcad/code/57286
Author: mohitdaga
Date: 2013-08-29 22:38:04 +0000 (Thu, 29 Aug 2013)
Log Message:
-----------
Avoid recurring division and multiplications.
Modified Paths:
--------------
brlcad/trunk/src/libicv/color_space.c
Modified: brlcad/trunk/src/libicv/color_space.c
===================================================================
--- brlcad/trunk/src/libicv/color_space.c 2013-08-29 22:35:10 UTC (rev
57285)
+++ brlcad/trunk/src/libicv/color_space.c 2013-08-29 22:38:04 UTC (rev
57286)
@@ -158,11 +158,10 @@
if (blue != 0 && ZERO(bweight))
bweight = 1.0 / (double)num_color_planes;
- size = img->height*img->width*img->channels;
- out_data = (double*) bu_malloc(size/3*sizeof(double), "Out Image Data");
-
+ size = img->height*img->width;
+ out_data = (double*) bu_malloc(size*sizeof(double), "Out Image Data");
if (multiple_colors) {
- for (in = out = 0; out < size/3; out++, in += 3) {
+ for (in = out = 0; out < size; out++, in += 3) {
value = rweight*in_data[in] + gweight*in_data[in+1] +
bweight*in_data[in+2];
if (value > 1.0) {
out_data[out] = 1.0;
@@ -172,17 +171,17 @@
out_data[out] = value;
}
} else if (red) {
- for (in = out = 0; out < size/3; out++, in += 3)
+ for (in = out = 0; out < size; out++, in += 3)
out_data[out] = in_data[in];
} else if (green) {
- for (in = out = 0; out < size/3; out++, in += 3)
+ for (in = out = 0; out < size; out++, in += 3)
out_data[out] = in_data[in+1];
} else if (blue) {
- for (in = out = 0; out < size/3; out++, in += 3)
+ for (in = out = 0; out < size; out++, in += 3)
out_data[out] = in_data[in+2];
} else {
/* uniform weight */
- for (in = out = 0; out < size/3; out++, in += 3)
+ for (in = out = 0; out < size; out++, in += 3)
out_data[out] = (in_data[in] + in_data[in+1] + in_data[in+2]) / 3.0;
}
bu_free(img->data, "icv_image_rgb2gray : rgb image data");
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
Discover the easy way to master current and previous Microsoft technologies
and advance your career. Get an incredible 1,500+ hours of step-by-step
tutorial videos with LearnDevNow. Subscribe today and save!
http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk
_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits