Method and device for use when reassembling a fragmented JPEG image
AssigneeMicro Systemation AB
InventorChristopher Rossall
Life of this patent
Estimating the term…
Abstract
The present invention concerns the recovery of fragmented files. In particular, the present invention concerns finding fragmentation points and continuation points of a fragmented JPEG image for purposes of reassembling the JPEG image. The continuation points are found by using a JPEG thumbnail image corresponding to the JPEG image to be reassembled.
Claims20
A method of reassembling a fragmented JPEG image, the method comprising:
- locating a sector of data comprising a JPEG file signature, wherein a JPEG image to be reassembled is comprised in a collection of sectors of data that comprise a plurality of consecutive sectors of data, and the sector of data comprising the JPEG file signature is comprised in the plurality of consecutive sectors of data, wherein at least a portion of the plurality of consecutive sectors of data comprise a respective restart marker value;
- extracting a JPEG thumbnail corresponding to the JPEG image to be reassembled from the sector of data comprising the JPEG file signature and from at least one of the consecutive sectors of data;
- determining sectors of data belonging to the JPEG image to be reassembled from sectors of data consecutive to the sector of data comprising the JPEG file signature and determining a first fragmentation point sector of data, wherein the first fragmentation point sector of data corresponds to a restart marker value;
- selecting a plurality of candidate sectors of data among said at least some of the plurality of sectors of data comprising a respective restart marker value based on the restart marker value corresponding to the first fragmentation point sector of data;
- determining a continuation point sector of data for each candidate sector of data by:
- forming a candidate set of sectors of data by appending at least the candidate sector of data to the sectors of data belonging to the JPEG image to be reassembled, and
- calculating a fitness score for the candidate sector of data by using the candidate set of sectors of data and the JPEG thumbnail as parameters in a fitness function, wherein the fitness score reflects similarity between the JPEG thumbnail and a candidate JPEG image formed by the candidate set of sectors of data;
- selecting the candidate sector of data with a highest fitness score among the calculated fitness scores as a continuation point sector of data for determining further sectors of data belonging to the JPEG image to be reassembled;
- and
- reassembling the JPEG image using the sectors of data that have been determined to belong to the JPEG image.
A device capable of reassembling a fragmented JPEG, the device comprising a computer-readable medium storing instructions that when executed by a processor cause the processor to:
- locate a sector of data comprising a JPEG file signature, wherein a JPEG image to be reassembled is comprised in a collection of sectors of data that comprise a plurality of consecutive sectors of data, and the sector of data comprising the JPEG file signature is comprised in the plurality of consecutive sectors of data, wherein at least a portion of the plurality of consecutive sectors of data comprise a respective restart marker value;
- extract a JPEG thumbnail corresponding to the JPEG image to be reassembled from the sector of data comprising the JPEG file signature and from at least one of the consecutive sectors of data;
- determine sectors of data belonging to the JPEG image to be reassembled from sectors of data consecutive to the sector of data comprising the JPEG file signature and determining a first fragmentation point sector of data, wherein the first fragmentation point sector of data corresponds to a restart marker value;
- select a plurality of candidate sectors of data among said at least some of the plurality of sectors of data comprising a respective restart marker value based on the restart marker value corresponding to the first fragmentation point sector of data;
- determine a continuation point sector of data for each candidate sector of data by:
- forming a candidate set of sectors of data by appending at least the candidate sector of data to the sectors of data belonging to the JPEG image to be reassembled, and
- calculating a fitness score for the candidate sector of data by using the candidate set of sectors of data and the JPEG thumbnail as parameters in a fitness function, wherein the fitness score reflects similarity between the JPEG thumbnail and a candidate JPEG image formed by the candidate set of sectors of data;
- select the candidate sector of data with a highest fitness score among the calculated fitness scores as a continuation point sector of data for determining further sectors of data belonging to the JPEG image to be reassembled;
- and
- reassemble the JPEG image using the sectors of data that have been determined to belong to the JPEG image.
A computer-readable storage medium comprising instructions that when executed by a processor cause the processor to carry out a method comprising:
- locating a sector of data comprising a JPEG file signature, wherein a JPEG image to be reassembled is comprised in a collection of sectors of data that comprise a plurality of consecutive sectors of data, and the sector of data comprising the JPEG file signature is comprised in the plurality of consecutive sectors of data, wherein at least a portion of the plurality of consecutive sectors of data comprise a respective restart marker value;
- extracting a JPEG thumbnail corresponding to the JPEG image to be reassembled from the sector of data comprising the JPEG file signature and from at least one of the consecutive sectors of data;
- determining sectors of data belonging to the JPEG image to be reassembled from sectors of data consecutive to the sector of data comprising the JPEG file signature and determining a first fragmentation point sector of data, wherein the first fragmentation point sector of data corresponds to a restart marker value;
- selecting a plurality of candidate sectors of data among said at least some of the plurality of sectors of data comprising a respective restart marker value based on the restart marker value corresponding to the first fragmentation point sector of data;
- determining a continuation point sector of data for each candidate sector of data by:
- forming a candidate set of sectors of data by appending at least the candidate sector of data to the sectors of data belonging to the JPEG image to be reassembled, and
- calculating a fitness score for the candidate sector of data by using the candidate set of sectors of data and the JPEG thumbnail as parameters in a fitness function, wherein the fitness score reflects similarity between the JPEG thumbnail and a candidate JPEG image formed by the candidate set of sectors of data;
- selecting the candidate sector of data with a highest fitness score among the calculated fitness scores as a continuation point sector of data for determining further sectors of data belonging to the JPEG image to be reassembled;
- and
- reassembling the JPEG image using the sectors of data that have been determined to belong to the JPEG image.
Dependencies are inferred from the claim text.