On Wed, 08 Jun 2005 22:19 , Jussi Laako <jussi.laako(a)pp.inet.fi> sent:
On Wed, 2005-06-08 at 05:47 -0700,
eviltwin69(a)cableone.net wrote:
I'm working with multibeam sonar,
airborne topographic and hydrographic
LIDAR, and airborne hyperspectral imagery data.
Sonar and radar applications are very familiar to me. There is no reason
why those couldn't be very efficient, yet written in C++. My opensource
HASAS passive sonar signal analysis suite, and the libDSP signal
processing library it uses, has been written using C++ and asm. I think
it's still very efficient.
And for example in these kinds of applications the most valuable feature
is how well it performs it's tasks and reliability. Execution speed is
secondary. You can buy more CPU power if required. Most large array
beamformers are heavy SMP systems anyway.
We're talking apples and oranges here. You're talking about the real-time
collection of multibeam. That is a piece of cake. I don't mean in terms of the
actual beamforming but in the amount of data per second you have to deal with.
The beamforming is really complicated. I'm talking about post-processing the
data from 7 ships with dual multibeams plus 8 or so hydro survey launches running
dual head multibeams plus a significant number of high-end sidescan systems plus
a plane running hydro and topo LIDAR and hyperspectral. The ships collect data
24/7, the HSLs 10 hours per day. All of these approximately 300 days per year.
The plane collects about 150 days per year, 5 to 6 hours per day. We're
post-processing for hydrographic (and other) types of use. When you're dealing
with tens to hundreds of billions of data points execution speed makes a huge
difference.
In C/C++ case the performance is more about how you
write the code, not
the language you use.
Yes, part of it is about how you write the code but if someone dumps a few
billion data points on you and says "here, check these" then processing speed
becomes extremely important. There have been some very good points made in this
discussion and I will definitely investigate some of them. My problem here is
that I've heard the same type of thing from companies and universities for way
too long. Something along the lines of - "Really, you don't need to write your
own processing code. We collected sonar data for a whole week and we didn't have
any problem processing it with (fill in your favorite GIS or sonar processing
package here)".
Although this thread has about run its course, I would like to continue the
discussion on sonar systems with you off-line if you are interested.
Jan