RunLength

版本1.2.0.0(18.7 KB) 1月
RunLength编码墨西哥人一样快和m

6.3 k下载

更新2017年4月8日

查看许可协议

RUNLENGTH——行程长度编码
行程长度编码矢量分解为一个向量,其中包含的
元素不相邻的重复,和第二个向量
包含重复的次数。
这可以减少内存来存储数据或允许分析序列。
编码:[B, N, BI] = RunLength (X)
解码:X = RunLength (B、N)
输入/输出:
X:完整的输入信号,行或列向量。
类型:(U) INT8/16/32/64,单,双,逻辑,CHAR。
B:压缩数据,相邻元素具有相同的值删除。
B和X具有相同的类型。
N:重复的元素B在双X或UINT8行向量。
BI:指数X元素B的双行向量。
RunLength (X,“字节”)回复N UINT8向量。

你可以找到很多FileExchange RLE工具了。这个C-Mex
矢量化M-versions大约5倍好。
的m文件RunLength_M包含矢量化教育并循环m。

例子:
编码和解码:
[b、n] = RunLength ([8 9 9、10、10、10、11))
x = RunLength (b、n)
% b = (8、9、10、11), n = (1、2、3、1), x = (8、9、9、10、10、10、11)
限制计数器255:
[b、n] = RunLength((257),“字节”)
% b = [1], n = uint8([2] 255年)
逻辑输入:
[b、n] = RunLength([真(257 1);假)
% b =[真实;假),n =[1] 257年
发现最长的序列:
x =地板(兰德(1,1 e6) * 2);
[b, n, bi] = RunLength (x);
[longestRun,指数]= max (n);
longestPos = bi(指数);

第一次编译c代码自动RunLength。
参见“RunLength_ReadMe。txt”的更多细节。

单元测试uTest_RunLength测试效度和速度。

测试:Matlab 6.5, 7.7, 7.8, 7.13, Win7/64 WinXP / 32
编译器:LCC3.8、BCC5.5 OWC1.8 MSVC2008/2010
没有编译下LCC2.4附带Matlab / 32 !
假定兼容性:更高的Matlab版本,Linux, MacOS。

引用作为

1月(2023)。RunLength(//www.tatmou.com/matlabcentral/fileexchange/41813-runlength), MATLAB中央文件交换。检索

MATLAB版本兼容性
创建R2011b
兼容任何释放
平台的兼容性
窗户 macOS Linux
类别
找到更多的在大文件和大数据帮助中心MATLAB的答案
确认

启发:runindex,FillGaps_ez

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!
版本 发表 发布说明
1.2.0.0

2日输出是一个列向量,当输入一个。骑自行车的人表示感谢。

1.1.0.0

在前提交文件RunLength。公司失踪了。自述补充道。

1.0.0.0