[BioC] generating haralick texture measures.

Oleg Sklyar osklyar at ebi.ac.uk
Sun Jan 20 11:19:22 CET 2008


Hi Miltinho,

the package name is EBImage, not EPImage, but actually I do not 
understand what you want to obtain (what are Haralick texture images?) 
and what you also want to achieve finally.

Haralick features (not images) are calculated for each individual object 
in an image (not for an image as a whole) from the corresponding 
co-occurrence matrices. There are 13 of them implemented in the package. 
So for each individual object in an image you can get at most 13 values 
(or if you really need those - 13 co-occurrence matrices), for n objects 
in an image you can get a matrix of n*13 values, which you can obtain 
with 'haralickFeatures' *after* you have segmented and indexed all the 
objects. Objects are indexed  by positive *integer* numbers instead of 
pixel color values with 0 being background, and 1, 2, 3 etc - being 
objects - in your example, therefore, io will never be indexing objects 
- as there a very low chance to get 1 and it is impossible to get 
anything higher (to have at least one object)! You can correct your 
example to generate some random objects, e.g. in the following way:

io<-round(as(ii,"IndexedImage")*5)

 > table(io)
io
    0    1    2    3    4    5
1020 2060 1940 1949 1964 1067

Then it is also not clear what you want to achieve with nc=3 - this 
basically tells the script to reduce the number of colors that encode 
image to 3! Have you seen any photographic image made in 3 colors or 
shades of gray?

Finally, why do you need the matrices? Sure one can calculate further 
statistics on those, not described by Haralick, but well some work was 
put into deriving those 13 and already the last 3 have no name as they 
do not have much of a meaning - just numbers - so do you want to derive 
new ones? Good luck if so, if not, then you only need those 13 numbers 
(calculated on say nc=256, i.e. 256x256 matrices instead of 3x3 
matrices, which in amount of information account to less than 13 features).
 > hr<-haralickMatrix(io, ii, nc = 3)
 > hr
, , 1

      [,1] [,2] [,3]
[1,]    1    0    0
[2,]    0    0    0
[3,]    0    0    0

, , 2

      [,1] [,2] [,3]
[1,]    1    0    0
[2,]    0    0    0
[3,]    0    0    0

, , 3

Regards,

Oleg


Milton Cezar Ribeiro wrote:
> I Dear all,
> 
> I just started to use EPImage package. I am looking for to generate Haralick texture images from a greyscale image. 
> 
> I have an greyscale image like the simulated below, and my intention is to generate a set of texture image, where each pixel of an image is the estimated texture measure. The output images will be used a modeling approach as input image.
> 
> ii<-as.Image(matrix(runif(10000),nc=100))
> io<-as(ii,"IndexedImage")
> hr<-haralickMatrix(io, ii, nc = 3)
> 
> Any suggestion are welcome 
> 
> Kind regards 
> 
> Miltinho
> Brazil
> 
> 
> 
>  para armazenamento!
> 
> 	[[alternative HTML version deleted]]
> 
> _______________________________________________
> Bioconductor mailing list
> Bioconductor at stat.math.ethz.ch
> https://stat.ethz.ch/mailman/listinfo/bioconductor
> Search the archives: http://news.gmane.org/gmane.science.biology.informatics.conductor

-- 
Dr Oleg Sklyar * EBI-EMBL, Cambridge CB10 1SD, UK * +44-1223-494466



More information about the Bioconductor mailing list