comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » Newbie question
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Switch to threaded view of this topic Create a new topic Submit Reply
Newbie question [message #5968] Thu, 21 March 1996 00:00 Go to next message
J. Allen Brandt is currently offline  J. Allen Brandt
Messages: 1
Registered: March 1996
Junior Member
As a potential buyer of IDL/PV-Wave, I am new to this newsgroup and had
hoped to use it to help me make a purchasing decision. Without starting
a flame war, let me ask, "Is there a FAQ available that shows the
similarities and differences between the two products?" I have been
considering the following Windows packages: Matlab, Hi-Q, IDL, and
PV-Wave. There is a considerable price span for these products.

I am a researcher who needs a tool to help me develop mathematical
convolutions and statistical analyses for image processing. I work with
2-D and 3-D image data and I need to perform things like texture
analysis, color segmentation, object counting, morphology, etc. I would
ideally like a package that would allow me to output "C" code. I could
then build a Visual C++ GUI front-end for it and distribute it for use
within my organization. Alternatively, I could simply use the native
interpreted code to prototype my techniques and once proven, re-write
them in C.

Can anyone offer any guidance as to the appropriate package for my stated
needs?

JB
Re: Newbie Question [message #16836 is a reply to message #5968] Tue, 24 August 1999 00:00 Go to previous message
Nando Iavarone is currently offline  Nando Iavarone
Messages: 48
Registered: December 1998
Member
<HTML>
Dan Fletcher wrote:
<BLOCKQUOTE TYPE=CITE>Coeff=DIGITAL_FILTER(Flow,Fhigh,50,40)
<BR>FilteredTestDataSub=CONVOL(Data[0,*],Coeff)

<P>When I do this, I get an error that says

<P>CONVOL: Kernel's dimensions are incompatible with operand's.

<P>I think this is because the Data[0,*] gives a 1xm array rather than
a</BLOCKQUOTE>
ok.see the reform function.
<BR>try:
<BR>FilteredTestDataSub=CONVOL(reform(Data[0,*], $
<BR> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
n_elements(Data[0,*])), $
<BR> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Coeff)
<BR>&nbsp;
<PRE>--&nbsp;
Nando Iavarone
Advanced Computer System - SPACE DIVISION
via Lazzaro Belli, 23
00040&nbsp; Frascati - RM
Tel: +39-6-944091 (switchboard)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 9440968 (direct)
E-mail:&nbsp;
&nbsp;&nbsp;&nbsp; f.iavarone@acsys.it
&nbsp;&nbsp;&nbsp; FrdndVrn@altavista.net</PRE>
&nbsp;</HTML>
Re: Newbie Question [message #16844 is a reply to message #5968] Mon, 23 August 1999 00:00 Go to previous message
Craig Markwardt is currently offline  Craig Markwardt
Messages: 1869
Registered: November 1996
Senior Member
Dan Fletcher <djfletcher@ucdavis.edu> writes:
>
> Coeff=DIGITAL_FILTER(Flow,Fhigh,50,40)
> FilteredTestDataSub=CONVOL(Data[0,*],Coeff)
>
> When I do this, I get an error that says
>
> CONVOL: Kernel's dimensions are incompatible with operand's.
>
> I think this is because the Data[0,*] gives a 1xm array rather than a
> vector of length m. I can't figure out any way to change that 1xm array
> into a vector without a FOR DO loop. Is there some simple way to solve
> this problem?
>

I don't know much about the digital filtering, but if you want to
convert a matrix to a vector, it's pretty simple. Like this:

FilteredTestDataSub=CONVOL( (Data[0,*])[*] ,Coeff)

Any vector or matrix with a [*] after it will be converted to a
one-dimensional vector. The parentheses are needed because Data[0,*]
is an expression.

Craig

--
------------------------------------------------------------ --------------
Craig B. Markwardt, Ph.D. EMAIL: craigmnet@cow.physics.wisc.edu
Astrophysics, IDL, Finance, Derivatives | Remove "net" for better response
------------------------------------------------------------ --------------
Re: Newbie Question [message #16846 is a reply to message #5968] Mon, 23 August 1999 00:00 Go to previous message
davidf is currently offline  davidf
Messages: 2866
Registered: September 1996
Senior Member
Dan Fletcher (djfletcher@ucdavis.edu) writes:

> I'm new to IDL and am implementing some signal processing code. I have
> an array corresponding to a set of n time series, each with m points. I
> want to filter each time series so I'm using the following code to
> filter the first time series
>
> Coeff=DIGITAL_FILTER(Flow,Fhigh,50,40)
> FilteredTestDataSub=CONVOL(Data[0,*],Coeff)
>
> When I do this, I get an error that says
>
> CONVOL: Kernel's dimensions are incompatible with operand's.
>
> I think this is because the Data[0,*] gives a 1xm array rather than a
> vector of length m. I can't figure out any way to change that 1xm array
> into a vector without a FOR DO loop. Is there some simple way to solve
> this problem?

data = Reform(data[0,*])

The trailing dimension of 1 will be dropped by IDL and you
will end up with the row vector you are looking for.

Cheers,

David

--
David Fanning, Ph.D.
Fanning Software Consulting
Phone: 970-221-0438 E-Mail: davidf@dfanning.com
Coyote's Guide to IDL Programming: http://www.dfanning.com/
Toll-Free IDL Book Orders: 1-888-461-0155
Re: Newbie Question [message #16847 is a reply to message #5968] Mon, 23 August 1999 00:00 Go to previous message
Matthew J. Sheats is currently offline  Matthew J. Sheats
Messages: 19
Registered: September 1997
Junior Member
Dan Fletcher wrote:

> I think this is because the Data[0,*] gives a 1xm array rather than a
> vector of length m. I can't figure out any way to change that 1xm array
> into a vector without a FOR DO loop. Is there some simple way to solve
> this problem?

Ooh. One I can answer. Heh.

Use REFORM(...) to trim off extra dimensions. For Ex:


Coeff=DIGITAL_FILTER(Flow,Fhigh,50,40)
FilteredTestDataSub=CONVOL(REFORM(Data[0,*]),Coeff)

It will strip off that extra 1 dimension. Check out the help for more
info.

> Thanks for any help,
> Dan Fletcher
> UCD Vet Med Class of 2002

Matthew Sheats
Los Alamos National Laboratory and
UCD Computer Science Grad Student, Class of God Only Knows....
  Switch to threaded view of this topic Create a new topic Submit Reply
Previous Topic: help with data points of contour.
Next Topic: idl > memory problems

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Thu Oct 09 14:23:37 PDT 2025

Total time taken to generate the page: 0.71913 seconds