Sounds a lot like the simplifications I made to be able to process 3D Kinect data at near full speed on an ARM CPU with no FPU.
Instead of trying to segment objects, remove backgrounds, do skeleton tracking, etc., just count pixels that fall within a 3D bounding volume.
Simple solutions are sometimes underappreciated. It helps, as you allude to after "let's be clear," to know what problem you really are trying to solve.
Sorry if this is a stupid question, but can't you do this without converting the image into an RGB 3D space? (i.e. iterate through the pixels and count the ones within a certain range of what you want)
You don't have to actually reify the conversion (as in, create a data structure that holds the new representation in memory). When they say that they converted the image into RGB 3D space, it was probably mainly conceptually, to give meaning to "nearness." I'd guess the only data they kept track of as the image streamed off the camera were two integer counts.
I wish I had more examples of algorithms where it is best explained as acting on a data structure that is not actually present, but all I can think of right now is using generators to represent a list.
Re:3D scatterplot of an image
by infinite8s on Friday December 15, 2017 @03:28PM
(#15934802)
How would you determine if they were within the range? That's effectively converting it into a 3D space.
A few plane equation evaluations—then a few ands, and a sum. Plenty of horsepower on a pentium pro to do that.
Re:3D scatterplot of an image
by infinite8s on Wednesday December 20, 2017 @10:21AM
(#15970272)
Those plane equations are describing the pixel in 3D space.
Re:3D scatterplot of an image
by the_cat_kittles on Friday December 15, 2017 @01:18PM
(#15933817)
i love these kinds of problems, because it seems like there is often a really simple solution like that. just finding something different in a very simple feature like color, or shape, or size, or location. there is a reason our brains pay attention to these kinds of things!
It was literally both cheaper and faster to have a grad student count the cells.
Let's be clear though: the researchers weren't interested in the cells; they were interested in having a pretty-darn-good count of cancerous cells vs. non-cancerous cells. Turns out, cancerous cells were a different color (brighter blue * brighter green) than healthy cells. So, instead, I just converted every image into RGB 3D space, counted all the pixels near 'dark green * dark blue', all the pixels near 'bright green * bright blue' then divided by the average area (in pixels) of each type of cell. The resulting counts were within 1% of the value the grad students could get, and the ratio was even more accurate.
We could get the cell count in a single linear, forward pass, as fast as the camera could take pictures.