Can I represent an image in a binary tree format?

1 回表示 (過去 30 日間)
srikanth Appala
srikanth Appala 2013 年 3 月 19 日
if true
% code
end
  1 件のコメント
Alessandro
Alessandro 2013 年 3 月 19 日
can t understand what you wannt

サインインしてコメントする。

回答 (2 件)

Image Analyst
Image Analyst 2013 年 3 月 19 日
See qtdecomp() in the Image Processing Toolbox.
  6 件のコメント
srikanth Appala
srikanth Appala 2013 年 3 月 21 日
sir, my project is "Binary partitioning tree as an efficient representation for image segmentation, information retrieval and image processing".so binary partitioning with image regions is important ro to us.to devide image into regions "region merging algorithm" is used,bt i dont knw how construct tree.help me
Image Analyst
Image Analyst 2013 年 3 月 21 日
I've used qtdecomp only briefly once and that was to just understand how it works. I never need to do that. It doesn't return some information that I needed and when I called the Mathworks they weren't too clear on how it worked either. Anyway, I don't use it. Not sure why you think you need to do this or why you chose that project subject. Can you explain why? Better yet, start your own discussion, rather than intertwine your discussion with Allesandro's.

サインインしてコメントする。


Alessandro
Alessandro 2013 年 3 月 21 日
編集済み: Alessandro 2013 年 3 月 21 日
from wikipedia I read the following about image segmentation:
In computer vision, image segmentation is the process of partitioning a digital image into multiple segments (sets of pixels, also known as superpixels). The goal of segmentation is to simplify and/or change the representation of an image into something that is more meaningful and easier to analyze
You need a tree and the "superpixels" values of the tree. I just wannted to understand the sparse objects from matlab so I tryed the qtdecomp function:
%define some grayscale image
I = uint8([1 1 1 1 2 3 6 6;...
1 1 2 1 4 5 6 8;...
1 1 1 1 7 7 7 7;...
1 1 1 1 6 6 5 5;...
20 22 20 22 1 2 3 4;...
20 22 22 20 5 4 7 8;...
20 22 20 20 9 12 40 12;...
20 22 20 20 13 14 15 16]);
%Get where there is information
S = qtdecomp(I,.05);
%Get the information using the simply mean value
erg = sparse(0);
blocks = unique(nonzeros(S));
for blocksize = blocks'
[y x] = find(S==blocksize);
for i=1:length(x)
erg(x(i),y(i)) = mean2(I(y(i):y(i)+blocksize-1,x(i):x(i)+blocksize-1));
end
end
rebuildimage = zeros(size(S));
%Rebuild the image from the mean values in the block
for blocksize = blocks'
[y x] = find(S==blocksize);
for i=1:length(x)
rebuildimage(y(i):y(i)+blocksize-1,x(i):x(i)+blocksize-1) = nonzeros(erg(x(i),y(i)))
end
end
disp(rebuildimage)
So now you can see rebuildimage looks like I. In the matlab sparse arrays S and erg you have the "super pixels" information.
  4 件のコメント
Mohammed
Mohammed 2013 年 4 月 4 日
編集済み: Mohammed 2013 年 4 月 4 日
It is useful for things like topology representation of the segmentation maps. It saves a lot of time for searching algorithms instead of doing linear searching, they use them as a probabilistic framework of searching that can reduce the time by a huge factor (from week to 10 mins of runtime)... I would suggest you to read about huffman coding and binay trees for more understanding about the tree representation!
Image Analyst
Image Analyst 2013 年 4 月 4 日
What would you be searching for?

サインインしてコメントする。

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by