May/June 2018 issue of acmqueue The May/June issue of acmqueue is out now


  Download PDF version of this article PDF

ITEM not available


Originally published in Queue vol. 10, no. 4
see this item in the ACM Digital Library



Julian Harty - Finding Usability Bugs with Automated Tests
Automated usability tests can be valuable companions to in-person tests.

Jim Christensen, Jeremy Sussman, Stephen Levy, William E. Bennett, Tracee Vetting Wolf, Wendy A. Kellogg - Too Much Information
Two applications reveal the key challenges in making context-aware computing a reality. As mobile computing devices and a variety of sensors become ubiquitous, new resources for applications and services - often collectively referred to under the rubric of context-aware computing - are becoming available to designers and developers. In this article, we consider the potential benefits and issues that arise from leveraging context awareness in new communication services that include the convergence of VoIP (voice over IP) and traditional information technology.

Gaetano Borriello - The Invisible Assistant
One lab's experiment with ubiquitous computing

James L. Crowley - Social Perception
Modeling human interaction for the next generation of communication services


(newest first)

tharaka | Mon, 24 Jun 2013 18:45:00 UTC


I am a final year student doing IT. For my final year research, I have to do an android project. It is something to do with the lottery system. All that I want is to extract the lottery numbers and the draw date from the lottery after capturing it from the android camera. I have been trying and trying but still not satisfied. I contacted some indian developers but still I was unable to get what I want. One of my friends told me to use openCV to extract the areas I want from the lottery (date and numbers). I did post on stack over flow as well:




Please help me out with this. It would be a great, very great help for me and my group members!!!

My email address is [email protected] / [email protected]

Thank you!

H.T. | Tue, 12 Mar 2013 05:56:00 UTC

What's the state plane project all about?

michael coates | Thu, 10 Jan 2013 23:45:02 UTC

i have a patent that has not gone public as of yet on using state plane coordinates with augmented reality. i am in need to of intigrating a visual alignment for a civil/survey app that will allow for an android tablet or ipad to completely replace a survey totalstation and also to be able to track in real time, coordinates without GPS . my current developer is amazing but sadly, is unfamiliar with opencv. my company is located in Washington state and we are looking for an opencv developer to work with. would you have some direction for us.

thank you, michael coates(CEO) 253-298-0099

Kirill Kornyakov | Thu, 22 Nov 2012 07:17:53 UTC


First of all, the binary packages are now obsolete (OpenCV 2.4.3), since OpenCV Manager contains binaries for the particular hardware platform. And for Tegra and non-Tegra devices the same binaries are used. The only difference is that on Tegra 3 the optimized code is enabled. So, yes, the above optimizations are available on Google Play right now.

Another thing to keep in mind, is that we can talk about 3 different types of optimizations. Multi-threading with TBB is available on all ARM chips, x86, but not MIPS. GPU optimizations are available on Tegra 3 only, because they are using specific API, and they will not work on non-Tegra devices. The third type of optimizations is vectorization with NEON, and it is also available on Tegra only. They can be enabled on other devices, but right now this is the major competitive advantage of OpenCV for Tegra. As you probably know, Qualcomm also disables NEON optimizations on non Snapdragon chips. And on x86 SSE code is used.

Anyway, I think it's possible that NVIDIA will someday contribute NEON code to the public OpenCV. One of possibilities is introducing CUDA on Tegra. This technology may be the key advantage of NVIDIA, so the NEON optimizations may be shared with community.

Tobias Manthey | Thu, 13 Sep 2012 22:55:44 UTC

Since OpenCv 2.4.2 the default mechanism for OpenCv distribution on Android is the OpenCv Manager. I saw a binary package for Tegra-Neon. Does this contain the above optimizations? Unfortunately it really does not work if you do not have a Tegra CPU.

I think in the end NVidea would do themselves a favor if they contribute the code to the OpenCv trunk. Nobody really buys a mobile device for a certain cpu. My guess is that 99% of mobile device owners would not know which cpu brand their device is running on.

Brooks Moses | Mon, 07 May 2012 23:29:42 UTC

Thanks for the reply, Kirill. Much appreciated!

Kirill Kornyakov | Sat, 05 May 2012 09:28:58 UTC

OpenCV4Tegra will be available for free in binary form. All optimization will be closed source as well as Intel IPP and NVIDIA NPP libraries. But if you develop mobile application with OpenCV, it will be automatically accelerated on NVIDIA Tegra devices. If you want more information, you can go to the OpenCV4Android user group:

ARM version of TBB uses original sources from Intel. Itseez team submitted a patch to the TBB for Android compilation, so for now we can say that TBB supports Android (both x86 and ARM). OpenCV can be built with or without TBB support for every supported platform.

For median blur we used not simple C++ to NEON translation, but reimplemented the idea with available NEON instructions. This is why we were able to get 23x speedup.

Here are some additional links on Khronos effort: 1. 2.

Sapporo | Sat, 05 May 2012 08:55:29 UTC

SSE optimized Median Blur shows 50x speed-up for desktop

Brooks Moses | Thu, 26 Apr 2012 22:45:41 UTC

This is very interesting work, and directly relevant to some things that I'm currently working on.

What is the availability of the Tegra-optimized OpenCV? Are the NEON and GLSL optimizations present in the OpenCV development trunk, or will they be committed there in the future? What about the ARM version of TBB; is that based on the current TBB codebase or were there additional modifications?

I am also curious about the "median blur" datapoint in figure 6, which shows a 23x improvement for the NEON version over the base ARM version. Can you comment on how that much of a speedup was obtained, given that even for 8-bit integers, the NEON vector operations only do 16-wide parallelism?

Finally, I would be interested in any further details you could provide on your second paragraph of future directions, and in particular on the Khronos effort for a new API. The goals of this sound very much like the ones for the VSIPL++ standard that we recently proposed to the OMG (and which, in my entirely biased opinion, is already quite successful at supporting heterogeneous platforms in the way you describe), and I would hope that the two communities could share experience and work together.

Leave this field empty

Post a Comment:

© 2018 ACM, Inc. All Rights Reserved.