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

Home » Public Forums » archive » weighted average for label_region
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Return to the default flat view Create a new topic Submit Reply
Re: weighted average for label_region [message #56529 is a reply to message #56389] Wed, 24 October 2007 14:01 Go to previous message
ben.bighair is currently offline  ben.bighair
Messages: 221
Registered: April 2007
Senior Member
On Oct 24, 11:17 am, "rpert...@gmail.com" <rpert...@gmail.com> wrote:
> Hi,
> I need to perfect a working algorithm to make it more accurate. I have
> an image that consists of many spots. I need to find where the center
> of each spot is. This is the algorithm I am using:
>
> ncol=image_size[0]
> regions = label_region(SpotsMask, /All_NEIGHBORS)
> n_spots=max(regions)
> print,"There are",n_spots," spots on image"
> window,4,xsize=image_size[0],ysize=image_size[1], title="Positions of
> Spots on Image"
> tvscl,final_image
>
> temp=0
> spotscoord = make_array(2,n_spots)
>
> for j = 1, n_spots DO BEGIN
> ind = where(regions eq j, count)
> spotscoord[0,temp]=(mean(ind) mod nCol)
> spotscoord[1,temp]=(mean(ind) / nCol)
> temp=temp+1
> endfor
>
> This leaves me with my spotscoord array with x,y coordinates. However,
> I need to find the center of each spot with some weighted
> average...i.e. if the cluster of pixels (for one spot) is more bright
> on one side, then the center will be skewed there...is there a way for
> me to do that?
>
> Thanks,
> RP

Hi,

I think you want to weight in your sportscoord calculation by the
(presumably) grayscale value of the original image pixels for that
blob. Brighter pixels will carry more weight. I don't know if it is
the correct term, but I call this "center of mass" as opposed to the
unweighted "centroid". Thus you would change

spotscoord[0,temp]=(mean(ind) mod nCol)

to

spotscoord[0,temp]=mean((ind mod nCol) * origImage[ind])


Cheers,
Ben
[Message index]
 
Read Message
Read Message
Previous Topic: Read data from SQL data base?
Next Topic: How to close all figures at the same

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

Current Time: Sat Apr 25 11:59:14 PDT 2026

Total time taken to generate the page: 3.68148 seconds