필터 지우기
필터 지우기

adapthisteq

조회 수: 8 (최근 30일)
Abbas Cheddad
Abbas Cheddad 2011년 3월 12일
Hi, I am using Matlab built in function "adapthisteq" which apparently implements the CLAHE algorithm. However, I am a bit confused regarding the size of the tiles in the parameters and its influence. When I use tiles {8x8} the algorithm runs faster than that of {256x256}. Normally, when we divide the image into smaller tiles we end up with large number of processed windows which slows down the underlying algorithm like for example the "blockproc" function. It looks like the "adapthisteq" is actually implementing an {8x8} tile size when the user enters {256x256} that is because:
  • The final result has a semi-visible grid of roughly the size of {8x8}
  • The output on images resembles more to {8x8} implementation of CLAHE in other languages Java, C++.
I hope to hear from you soon.
Cheers. Cheddad
  댓글 수: 2
Oleg Komarov
Oleg Komarov 2011년 3월 12일
And the question is?
Abbas Cheddad
Abbas Cheddad 2011년 3월 13일
I thought the issue highlighted above is fairly self-explanatory but to summarize, the question is two fold:
-Why adapthiseq with {256x256} size tiles runs slower than that of {8x8}?
-Why the output of {256x256} execution of adapthiseq on images shows a grid with smaller blocks, e.g., {8x8}?

댓글을 달려면 로그인하십시오.

답변 (1개)

Teja Muppirala
Teja Muppirala 2011년 3월 28일
The 'numtiles' argument in ADAPTHISTEQ refers to the number of tiles to break the entire image into, and not the actual pixel size of each tile itself. For example, if your image size was 800 x 800, then when you say
adapthisteq(I,[8 8])
you are block processing on 100 pixels by 100 pixels sized blocks. Similarly,
adapthisteq(I,[100 100])
would operate on 8 pixels by 8 pixels sized blocks at a time. This takes much longer, since now you have to do 10000 blocks.
  댓글 수: 1
Abbas Cheddad
Abbas Cheddad 2011년 3월 28일
Thank you for the answer. Alright, I see what you mean, but isn't that confusing to have that in brackets in a similar fashion as MATLAB does in blockproc function? It was much easier to let users see it in its block based conventional way I think.
adapthisteq(I,[8 8]) % divide the image into 8x8 blocks longer time
adapthisteq(I,[100 100]) %divide the image into 100x100 blocks faster

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Computer Vision with Simulink에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by