Image Classification Limits Part 2

March 31, 2011

(This article was first published on » R, and kindly contributed to R-bloggers)

Recently i released the first 64-bit versions of Bio7 bundled with a 64-bit Java Virtual Machine.

I’m always curious how far i can go using both applications together to do image analysis (especially classification) with huge images coming e.g. from satellites.
The transfer of the images in Bio7 is realized with a combination of ImageJ and R connected with Rserve. The disadvantage of this approach is that in both applications some more or less image data is present.

In one of my last posts i was able to classify RGB images with R of size ~7000*7000 with a special Mac Bio7 port.

Cluster Analysis (clara) with R: Max 7000*6157*3(RGB) -> 6 centers: 168sec. (byte transfer!) Mac OSX 10.6, 2.93 GHz, 4GB RAM

With a Linux 64-bit OS (8GB) at hand i was now able to classify even bigger images:

1. Cluster Analysis (clara) with R: Max 9000*9000*3(RGB) -> 6 centers: 181sec. (byte transfer!) Linux Ubuntu 10.04, 2* 2.27 GHz, 8GB RAM
initial heap size=5Gb, maximum heap size=5Gb

2. Cluster Analysis (clara) with R: Max 10000*10000*3(RGB) -> 6 centers: 338sec. (byte transfer!) Linux Ubuntu 10.04, 2* 2.27 GHz, 8GB RAM
initial heap size=5Gb, maximum heap size=5Gb

The huge difference between the first and the second time result are because of the memory limitation of the OS (which has to allocate RAM for the images twice – in the JRE and for the image vectors in R) and the resulting garbage collection to free up space. Because of the integer indexing limitation of R and Java the theoretical limit (of a pure image transfer) will be an image of size 2^31 (Java only supports signed integers) if using both applications together. However it is nice to see that it is possible to analyze huge images practically with R and ImageJ and that this works together very well.

To leave a comment for the author, please follow the link and comment on their blog: » R. offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

If you got this far, why not subscribe for updates from the site? Choose your flavor: e-mail, twitter, RSS, or facebook...

Comments are closed.

Search R-bloggers


Never miss an update!
Subscribe to R-bloggers to receive
e-mails with the latest R posts.
(You will not see this message again.)

Click here to close (This popup will not appear again)