how i can calculate mutual information for 2 binary sequence?

4 次查看(过去 30 天)
I have "<88200x1 double>" binary sequences and dont know how to calculate mutual information for this 2 binary sequence. I'm now user matlab, please help me :D

回答(2 个)

HU xb
HU xb 2013-6-11
I think you should change the data to uint8 or uint16 format.
I have uploaded the function with a very simple form, It is also suited for vectors.
you also can try CCRE,which is more general than the Shannon Entropy. if you prefer the double data type,the data is treated as continuous. http://www.mathworks.com/matlabcentral/fileexchange/41699-ccre-for-multi-modal-image-registration

Milos Denic
Milos Denic 2013-6-11
This is nice for pictures. I try explain u what is my problem :) I have a couple of .wav files, and i transported to binary sequence. I record files with function: fs= 44100; #frequency intval = 2; #interval voicein = wavrecord(intval*fs,fs, 'int16'); #record transported into binary with function: wavbinary = dec2bin( typecast( single(wav(:)), 'uint16'), 16 ) -'0'; remove redundancy with function: wavbinary = bitand(wav*32768+32768,1) and i got "<88200x1 double>" file Now my problem is how i can calculate mutal info for two binary files :D

类别

Help CenterFile Exchange 中查找有关 Characters and Strings 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by