IP Library Granted Patent US 9,866,724
Granted Patent B2
US 9,866,724 · App. 14/743,580 · Granted Jan 9, 2018

Pixel perturbation for transmission of meta-information

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,866,724
App. No.
14/743,580
Granted
Jan 9, 2018
Kind
B2
Abstract

Techniques disclosed herein provide an approach using pixel perturbation to transmit information. In one embodiment, a pixel perturbation engine perturbs pixels of an image to encode meta-information therein. In particular, the perturbation engine may perform controlled perturbation of pixel bits which are unlikely to affect visual quality are perturbed, such as perturbing the least significant bits in one or more channels of a RGB or YUV image. Higher order bits may also be perturbed in color channels such as the blue or UV channels that the human eye is less sensitive to. To mitigate loss of information, the information may be encoded using error correcting codes. After the image having meta-information encoded therein is transmitted to a client device, the meta-information may be recovered and used to determine performance of the virtual desktop infrastructures (VDI) system.

Claims (29)

1. A computer-implemented method of encoding information in an image transmitted from a first computing device to a second computing device, comprising:

receiving an image;

perturbing at least one bit in each pixel of a plurality of pixels selected from the received image to encode information therein, wherein at least one other bit in each of the plurality of selected pixels is not perturbed, and wherein bits in one or more bit positions that are higher than one or more least significant bit positions are perturbed in a blue but not a green channel where the received image is a RGB image or a UV but not a Y channel where the received image is a YUV image; and

subsequent to the perturbing, transmitting the image having the information encoded therein to the second computing device.

2. The method of claim 1 , wherein the perturbing includes perturbing one or more least significant bits in one or more channels of the selected pixels of the received image.

3. The method of claim 2 , wherein the bits are perturbed after a quantization step performed during lossy compression of the received image.

4. The method of claim 1 , wherein the perturbed pixels are pixels in one or more scan lines or pixel tiles.

5. The method of claim 1 , wherein the received image is a displayed image of a virtual desktop.

6. The method of claim 5 , wherein the information includes meta-information for benchmarking or capacity planning of a virtual desktop infrastructure (VDI) service providing the virtual desktop.

7. The method of claim 6 , wherein the meta-information includes at least one of information indicating the start or end of an operation, information indicating the intended movement of a window, information indicating which applications are running, information indicating whether a particular window is showing, a frame number, a page number, coordinates of an inner frame, a watermark, and a document identifier.

8. The method of claim 1 , wherein the information is encoded using an error correcting code.

9. The method of claim 1 , wherein the information is repeatedly encoded for redundancy.

10. A non-transitory computer-readable storage medium containing a program which, when executed by one or more processors, performs operations for encoding information in an image transmitted from a first computing device to a second computing device, the operations comprising:

receiving an image;

perturbing at least one bit in each pixel of a plurality of the selected pixels selected from the received image to encode information therein, wherein at least one other bit in each of the plurality of selected pixels is not perturbed, and wherein bits in one or more bit positions that are higher than one or more least significant bit positions are perturbed in a blue but not a green channel where the received image is a RGB image or a UV but not a Y channel where the received image is a YUV image; and

subsequent to the perturbing, transmitting the image having the information encoded therein to the second computing device.

11. The computer-readable storage medium of claim 10 , wherein the perturbing includes perturbing one or more least significant bits in one or more color channels of the selected pixels of the received image.

12. The computer-readable storage medium of claim 11 , wherein the bits are perturbed after a quantization step performed during lossy compression of the received image.

13. The computer-readable storage medium of claim 10 , wherein the perturbed pixels are pixels in one or more scan lines or pixel tiles.

14. The computer-readable storage medium of claim 10 , wherein the information includes meta-information for benchmarking or capacity planning of a virtual desktop infrastructure (VDI) service providing a virtual desktop.

15. The computer-readable storage medium of claim 14 , wherein the meta-information includes at least one of information indicating the start or end of an operation, information indicating the intended movement of a window, information indicating which applications are running, information indicating whether a particular window is showing, a frame number, a page number, coordinates of an inner frame, a watermark, and a document identifier.

16. The computer-readable storage medium of claim 10 , wherein the information is encoded using an error correcting code.

17. The computer-readable storage medium of claim 10 , wherein the information is repeatedly encoded for redundancy.

18. A system, comprising:

a processor; and

a memory, wherein the memory includes a program executable in the processor to perform operations for encoding information in an image transmitted from the system to another computing device, the operations comprising:

receiving an image,

perturbing at least one bit in each pixel of a plurality of pixels selected from the received image to encode information therein, wherein at least one other bit in each of the plurality of selected pixels is not perturbed, and wherein bits in one or more bit positions that are higher than one or more least significant bit positions are perturbed in a blue but not a green channel where the received image is a RGB image or a UV but not a Y channel where the received image is a YUV image, and

subsequent to the perturbing, transmitting the image having the information encoded therein to the other computing device.

Assignments (4)
PATENT ASSIGNMENT Recorded Aug 5, 2024
From: VMWARE LLC
To: OMNISSA, LLC
Reel/Frame 068327/0365 →
SECURITY INTEREST Recorded Jul 3, 2024
From: OMNISSA, LLC
To: UBS AG, STAMFORD BRANCH
Reel/Frame 068118/0004 →
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 18, 2015
From: KURKURE, UDAY; SIVARAMAN, HARI; FARKAS, PETER; HE, XINGZE
To: VMWARE, INC.
Reel/Frame 035953/0753 →