Personal health monitor data compaction using multiple encoding algorithms
AssigneeAtombeam Technologies Inc.
InventorsJoshua Cooper, Charles Yeomans
Life of this patent
Estimating the term…
Abstract
Health monitor data is encoded using a plurality of encoding libraries. Portions of the data are encoded by different encoding libraries, depending on which library provides the greatest compaction. This methodology not only provides substantial improvements in data compaction over use of a single data compaction algorithm with the highest average compaction, but also provides substantial additional security in that multiple decoding libraries must be used to decode the data. Optionally, each portion of data may further be encoded using different sourceblock sizes, providing further security enhancements as decoding requires multiple decoding libraries and knowledge of the sourceblock size used for each portion of the data.
Claims18
A system for health data compaction, comprising:
- a computing device comprising a processor, a memory, and a non-volatile data storage device;
- a multi-codebook compaction module comprising a first plurality of programming instructions that, when operating on the processor, causes the processor to:
- receive user health information from a health monitoring system;
- divide the user health information into a plurality of sourceblocks;
- select a list of codebooks for encoding the plurality of sourceblocks, wherein each codebook has a codebook identifier;
- for each sourceblock:
- encode the sourceblock with each of the codebooks in the list of codebooks;
- generate a data pair by associating the codebook identifier of the codebook which produced the encoded sourceblock with the encoded sourceblock;
- and
- aggregate each data pair into a data structure comprising an ordered sequence of pairs each comprising an encoded sourceblock and its associated codebook identifier.
A method for health data compaction, comprising the steps of:
- receiving user health information from a health monitoring system;
- dividing the user health information into a plurality of sourceblocks;
- selecting a list of codebooks for encoding the plurality of sourceblocks, wherein each codebook has a codebook identifier;
- for each sourceblock:
- encoding the sourceblock with each of the codebooks in the list of codebooks;
- generating a data pair by associating the codebook identifier of the codebook which produced the encoded sourceblock with the encoded sourceblock;
- and
- aggregating each data pair into a data structure comprising an ordered sequence of pairs each comprising an encoded sourceblock and its associated codebook identifier.
A computing system for health data compaction, comprising one or more computers with executable instructions that, when executed, cause the computing system to:
- receive user health information from a health monitoring system;
- divide the user health information into a plurality of sourceblocks;
- select a list of codebooks for encoding the plurality of sourceblocks, wherein each codebook has a codebook identifier;
- for each sourceblock:
- encode the sourceblock with each of the codebooks in the list of codebooks;
- generate a data pair by associating the codebook identifier of the codebook which produced the encoded sourceblock with the encoded sourceblock;
- and
- aggregate each data pair into a data structure comprising an ordered sequence of pairs each comprising an encoded sourceblock and its associated codebook identifier.
Non-transitory computer-readable storage media having computer-executable instructions embodied thereon that, when executed by one or more processors of a computing system for health data compaction, cause the computing system to:
- receive user health information from a health monitoring system;
- divide the user health information into a plurality of sourceblocks;
- select a list of codebooks for encoding the plurality of sourceblocks, wherein each codebook has a codebook identifier;
- for each sourceblock:
- encode the sourceblock with each of the codebooks in the list of codebooks;
- generate a data pair by associating the codebook identifier of the codebook which produced the encoded sourceblock with the encoded sourceblock;
- and
- aggregate each data pair into a data structure comprising an ordered sequence of pairs each comprising an encoded sourceblock and its associated codebook identifier.
Dependencies are inferred from the claim text.