Path: news.mathworks.com!not-for-mail
From: <HIDDEN>
Newsgroups: comp.soft-sys.matlab
Subject: Re: Help with image processing
Date: Tue, 3 Nov 2009 15:56:01 +0000 (UTC)
Organization: The MathWorks, Inc.
Lines: 38
Message-ID: <hcpjqh$quv$1@fred.mathworks.com>
References: <hcp0nc$on$1@fred.mathworks.com> <151680ce-a53e-4537-858e-4fd98565d087@s15g2000yqs.googlegroups.com>
Reply-To: <HIDDEN>
NNTP-Posting-Host: webapp-05-blr.mathworks.com
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: 8bit
X-Trace: fred.mathworks.com 1257263761 27615 172.30.248.35 (3 Nov 2009 15:56:01 GMT)
X-Complaints-To: news@mathworks.com
NNTP-Posting-Date: Tue, 3 Nov 2009 15:56:01 +0000 (UTC)
X-Newsreader: MATLAB Central Newsreader 2074250
Xref: news.mathworks.com comp.soft-sys.matlab:582076


Hi thanks for your reply ImageAnalyst. Yes I am aware of the problems of measuring colour from photographs. I am intending to calibrate my camera with a colour chart, the reference I have in to correct for small changes in illumination, but I presume there are none (or the effects are negliable) because I use a controlled lighting environment and fixed camera settings.. The colourchart will be used to calibrate my CCD of the camera to be able to be able to compare my study with others.

In reply to your comments on the code (this is just from a demo), but I also tried different edge detections which all 'fail' to detect enough borders to just fill my image. I will try imclose instead of imfill and see what the difference is.. the texture image or intensity image might also be a good idea. I tried applying the edge detection to my blue, red and green channel seperately that improved it a bit but not enough. 

However if I use imclose I might still not be able to ignore the tail so using a shape to fit the image is not something that is a good approach?? 

Thanks!


ImageAnalyst <imageanalyst@mailinator.com> wrote in message <151680ce-a53e-4537-858e-4fd98565d087@s15g2000yqs.googlegroups.com>...
> I'm not sure what code you used.  Did you try some sort of edge filter
> like Sobel, Canny, or Difference of Gaussians?  You might have to
> combine an edge detected image with other kinds of images, such as the
> intensity image or a texture image (such as a variance filter or
> something like that).  You can use imclose to do a morphological
> closing to smooth and connect ragged boundaries.
> 
> You can get size if you know your field of view.  You will not be able
> to get color unless you have a standard in your field of view, such as
> the xrite Color Checker Chart.(http://www.xrite.com/
> product_overview.aspx?ID=820).  This will enable you to compensate for
> changes from picture to picture in illumination level and the "color
> temperature" of your illumination (hopefully you know what that is).
> Otherwise you're just using arbitrary units - you're just using the
> "book formulas" which is no better than Photoshop.  It's totally
> arbitrary and not accurate.  That is, if you got an CIE LAB color from
> your MATLAB routine, it would not match the values that you would get
> if you measured the actual fish via a spectrophotometer or
> colorimeter.  Your "color reference card" doesn't appear to have any
> colors in it so the best you can do is to compensate for overall
> intensity level.  Even if it were color, there's only 3 patches and
> this is not enough to do color correction (picture-to-picture rgb
> correction) or color standardization (calibration, or rgb to CIE LAB
> conversion).
> 
> You might also ask for algorithmic advice in sci.image.processing.
> Regards,
> ImageAnalyst