Photographic copy prevention of a screen image

A method for preventing photographic capture of a displayed image on an electronically controlled screen using a photographic capture device is provided. The method includes intercepting an image for display; generating a plurality of subset frames based on the intercepted image; dividing the intercepted image into a plurality of subsections; generating a pseudo random number on each of the subsections within the plurality of subsections using a pseudo random number generator; mapping, on each of the subset frames within the plurality of subset frames, a group of subsections within the plurality of subsections that share a common generated pseudo random number; and determining a frame rate value for displaying the plurality of subset frames, which enables human visualization of the plurality of subset frames as a single perceived frame.

BACKGROUND

The present invention generally relates to the field of computing, and more particularly to image processing.

Many types of computer display screens may be used to present information. For example, computer screens, tablet screens, and smartphone screens may display sensitive and confidential information. Also, according to other examples, cinematic projection may present visual access to confidential and/or copyright protected material.

SUMMARY

According to one embodiment, a method for preventing photographic capture of a displayed image on an electronically controlled screen using a photographic capture device is provided. The method includes intercepting an image for display; generating a plurality of subset frames based on the intercepted image; dividing the intercepted image into a plurality of subsections; generating a pseudo random number on each of the subsections within the plurality of subsections using a pseudo random number generator; mapping, on each of the subset frames within the plurality of subset frames, a group of subsections within the plurality of subsections that share a common generated pseudo random number, whereby a single mapped subset frame contains a single group of subsections within the plurality of subsections sharing the common generated pseudo random number and the mapping is performed from the lowest generated pseudo random number to the highest generated pseudo random number; and determining a frame rate value for displaying the plurality of subset frames, which enables human visualization of the plurality of subset frames as a single perceived frame.

According to another embodiment, a computer system for preventing photographic capture of a displayed image on an electronically controlled screen using a photographic capture device is provided. The computer system includes one or more processors, one or more computer-readable memories, one or more computer-readable tangible storage medium, and program instructions stored on at least one of the one or more tangible storage medium for execution by at least one of the one or more processors via at least one of the one or more memories, where the computer system is capable of performing a method. The method includes the steps of: intercepting an image for display; generating a plurality of subset frames based on the intercepted image; dividing the intercepted image into a plurality of subsections; generating a pseudo random number on each of the subsections within the plurality of subsections using a pseudo random number generator; mapping, on each of the subset frames within the plurality of subset frames, a group of subsections within the plurality of subsections that share a common generated pseudo random number, whereby a single mapped subset frame contains a single group of subsections within the plurality of subsections sharing the common generated pseudo random number and the mapping is performed from the lowest generated pseudo random number to the highest generated pseudo random number; and determining a frame rate value for displaying the plurality of subset frames, which enables human visualization of the plurality of subset frames as a single perceived frame.

According to yet another embodiment, a computer program product for preventing photographic capture of a displayed image on an electronically controlled screen using a photographic capture device is provided. The computer program product includes one or more computer-readable tangible storage medium and program instructions stored on at least one of the one or more tangible storage medium, the program instructions executable by a processor. The computer program product includes program instructions to: intercept an image for display; generate a plurality of subset frames based on the intercepted image; divide the intercepted image into a plurality of subsections; generate a pseudo random number on each of the subsections within the plurality of subsections using a pseudo random number generator; map, on each of the subset frames within the plurality of subset frames, a group of subsections within the plurality of subsections that share a common generated pseudo random number, whereby a single mapped subset frame contains a single group of subsections within the plurality of subsections sharing the common generated pseudo random number and the mapping is performed from the lowest generated pseudo random number to the highest generated pseudo random number; and determine a frame rate value for displaying the plurality of subset frames, which enables human visualization of the plurality of subset frames as a single perceived frame.

DETAILED DESCRIPTION

Embodiments of the present invention relates to the field of computing, and more particularly to image protection. The following described exemplary embodiments provide a system, method, and program product to, among other things, provide photographic capture protection for a display screen.

As previously described with respect to display screen images, many types of display screens, such as computer screens, tablet screens, and smartphone screens, may be used to present sensitive and confidential information. Additionally, cinematic projection may present visual access to confidential and/or copyright protected material. However, the photographic image on the display screen may contain confidential or protected information the user does not wish to be reproduced. As such, the reproduction of confidential or protected information may result in identity theft, release of a trade secret, information protected under an attorney-client privilege, information protected under a doctor-patient privilege, and/or the duplication of copyrighted material. Therefore, it may be advantageous, among other things, to prevent photographic copy of a screen image.

The one or more exemplary embodiments described herein provide a solution to protecting a display screen from photographic capture and reproduction that may contain confidential or protected information. According to one exemplary embodiment described herein, a method for protecting an image visually presented on a display screen is provided. In accordance with one implementation, the image visually presented may be broken up into a series of small subsets of the original image. Cycling through the series of small subsets at a given frame rate may produce a complete image, as perceived by the human eye; however, when a photographic capture device is used to capture the presented image, the presented image appears as an incomplete image. Thus, visual access to potentially confidential (e.g., legal documents) or protected (e.g., copyright) information is prevented.

The following described exemplary embodiments provide a system, method and program product to provide for protection from photographic capture of a display screen. Based on at least one implementation, the present embodiment displays a series of subset frames that are portions of an image frame. When viewed at a specific frame rate, the subset frames can be perceived as one image by the human eye, however the subset frames can be viewed as separate images when captured by a photographic capture device. As such, this technology may be used to safeguard protected or privileged information.

The present embodiment may be designed to help prevent someone from copying full replication of a user's screen information using standard photographic methods. According to one implementation, the present embodiment may include dividing the visual presentation information into smaller subsets (i.e. subsections of frames, dots, pixels, etc.) of the original image and cycling though those displayed portions of the visual presentation in such a way as to still allow human visual recognition. However, at the same time the present embodiment may prevent a singularly recognizable image of the screen from being captured in a single snapshot. Furthermore, according to at least one implementation, the present embodiment may mix the subsections constantly and vary the frame refresh rate such that a series of images of the screen are unlikely to result in a coherent image of the screen. Additionally, the present embodiment may be implemented in hardware via a graphics display adapter to apply to either a subsection or complete screen coverage and may be made software selectable as needed.

For example, assuming the standard physical screen image of X by Y pixels, the present embodiment employs a configurable subset of Z frames (which are subsets of the entire image) and a configurable refresh rate may be utilized. As such, the present embodiment may be implemented using a series of rules (e.g., a rule to display the subsets of the entire image in a diagonal pattern) that determines which pixels go into each of the Z subset frames and ensures that all pixels are displayed when the complete series of Z subset frames is displayed. The series of rules to implement by the present embodiment may be defined by the user. Additionally, the present embodiment may compensate for lower refresh rates by artificially brightening the pixels being displayed in each frame, thereby allowing the user to view the image on a computer screen. When the refresh rate is lower, the Z subset frames projected on the computer display screen may be more difficult for the human eye to perceive as a complete image. By brightening the pixels for lower refresh rates, human visual recognition of the image as a complete image is enhanced while the present embodiment continues to operate.

Referring now toFIG. 1, an exemplary networked computer environment100in accordance with one embodiment is depicted. The networked computer environment100may include a computer102with a processor104and a data storage device106that is enabled to run a Photographic Capture Prevention Program108A. The networked computer environment100may also include a server112that is enabled to run a Photographic Capture Prevention Program108B and a communication network110. The networked computer environment100may include a plurality of computers102and servers112, only one of which is shown for illustrative brevity. According at least one implementation, the present embodiment may also include a pseudo random number generator114, which may be running on server112. The pseudo random number generator114may implement patterns, such as horizontal, vertical, diagonal, scatter, etc., to create subsections to subset frames (described in more detail with respect toFIG. 3). The communication network may include various types of communication networks, such as a wide area network (WAN), local area network (LAN), a telecommunication network, a wireless network, a public switched network and/or a satellite network. It may be appreciated thatFIG. 1provides only an illustration of one implementation and does not imply any limitations with regard to the environments in which different embodiments may be implemented. Many modifications to the depicted environments may be made based on design and implementation requirements.

The client computer102may communicate with server computer112via the communications network110. The communications network110may include connections, such as wire, wireless communication links, or fiber optic cables. As will be discussed with reference toFIG. 4, server computer112may include internal components800aand external components900a, respectively and client computer102may include internal components800band external components900b, respectively. Client computer102may be, for example, a mobile device, a telephone, a personal digital assistant, a netbook, a laptop computer, a tablet computer, a desktop computer, or any type of computing device capable of running a program and accessing a network.

According to the present embodiment, a program, such as a Photographic Capture Prevention Program108A and108B may run on the client computer102or on the server computer112. The Photographic Capture Prevention Program108A,108B will prevent the photographic copying of a screen image from a screen associated with a device, such as a computer102. The Photographic Capture Prevention method is explained in further detail below with respect toFIG. 2.

FIG. 2, an operational flowchart200illustrating the steps carried out by a program to prevent photographic capture of a standard physical screen image of X by Y pixels in accordance with one embodiment is depicted. At202within the Photographic Capture Prevention Program108A,108B (FIG. 1), an image frame sent for projection on the computer display screen is intercepted in a repeated manner when the computer display screen is operating. The Photographic Capture Prevention Program108A,108B intercepts an image in a repeated manner. For example, as a user operating a computer, such as client computer102(FIG. 1), may be working, the present embodiment may automatically capture an image frame sent for projection on the computer display screen. The rate at which the Photographic Capture Prevention Program108A,108B intercepts an image may be based on the frame rate the computer display screen uses to project images. For example, if the computer display screen projects an image at 30 frames per second, then the Photographic Capture Prevention Program108A,108B may intercept images sent to the computer display screen 30 times per second. The Photographic Capture Prevention Program108A,108B may be manually disabled by the user to allow a photographic capture device, such as a camera, to reproduce the computer display screen.

Next at204within the Photographic Capture Prevention Program108A,108B (FIG. 1), a user configurable subset of Z blank subset frames is generated. For example, the user configurable variable Z may be set as5. As such, upon capturing an image sent for projection on a computer display screen, the present embodiment generates 5 blank subset frames.

Then at206within the Photographic Capture Prevention Program108A,108B (FIG. 1), the intercepted image is divided into a number of subsections (i.e. N×M). As such, to create the number of subsections, the present embodiment may divide the intercepted image into a series of N×M boxes, whereby N and M may represent numbers configurable by the user or, in an alternate implementation, may be automatically generated by the Photographic Capture Prevention Program108A and108B (FIG. 1). Furthermore, N×M may represent the horizontal and vertical axis of the intercepted image. For example, if there are 5 subset frames, the total number of subsections is equal to 25 (i.e. 5×5). Similarly, in the same example, a greater number of smaller subsections may be implemented such that the 5 subset frames may be divided into 100 subsections (i.e. 10×10).

Following next at208within the Photographic Capture Prevention Program108A,108B (FIG. 1), a pseudo random number is generated. As such, according to one implementation a pseudo random number generator114(FIG. 1) running on a server, such as server112(FIG. 1), may be utilized to coordinate the distribution of the N×M subsections to the Z subset frames. Therefore, the pseudo random number generator114(FIG. 1) may assign a number, among the integers 1 through Z (i.e. the number of subset frames), to each of the N×M subsections. Then, a total of (N×M)/Z subsections may be assigned to each subset frame. The number assigned to a subsection by the pseudo random number generator114(FIG. 1) may correspond to the particular subset frame upon which the subsection may be displayed. Therefore, continuing with the example previously described above, when there are 5 subset frames and 25 subsections, the pseudo random number generator114(FIG. 1) may assign the numbers 1 through 5 to each of the subsections. As such, since there are 5 subset frames among which to divide the subsections, each subset frame may be assigned 5 subsections to display. Therefore, this designation would translate to 5 subsections being assigned the integer “1,” five subsections being assigned the integer “2,” and so on until all of the subsections have been assigned a pseudo random number that corresponds to a subset frame.

Next at210within the Photographic Capture Prevention Program108A,108B (FIG. 1), subsections are mapped to a subset frame. As such, once each of the N×M subsections is assigned a pseudo random number, the subsections may be mapped on the subset frame corresponding to the particular number assigned via the pseudo random number generator114(FIG. 1). Furthermore, the mapping of the N×M subsections to the Z number of subset frames may be performed, according to one implementation, from the subsections with the lowest generated pseudo random number to the subsections with highest generated pseudo random number. Additionally, each subset frame in the Z number of subset frames may contain a single group of subsections sharing a common generated pseudo random number. Therefore, when properly mapped, such a distribution may create Z number of subset frames that may each display a 1/Z portion of the original image.

Next at212within the Photographic Capture Prevention Program108A,108B (FIG. 1), the subset frames are displayed. Therefore, after the mapping of the number of subsections is complete, the Photographic Capture Prevention Program108A,108B (FIG. 1) may transmit the mapped subset frames containing 1/Z portion of the original image to the computer display screen for projection. According to one implementation, the subset frames may be projected on the computer display screen of the computer102at a frame rate that may still allow for human visual recognition of the image projected on the computer display screen while the computer is in use by the user. However, a singularly comprehensible image of the screen and derivatives of that captured digital image cannot be captured in a single snapshot by a photographic capture device, such as a camera. Furthermore, to compensate for lower refresh rates (or a large number of Z frames), the brightness of the individual subsections may be artificially brightened according to one implementation. Increasing the brightness of the individual subsections for lower refresh rates enables the human eye to more clearly visualize the image when the image is on the screen for a brief period of time.

Then at214, it may be determined whether the method may terminate. According to one implementation, the method may terminate based on various circumstances, such as user intervention, the amount of elapsed time, system performance, etc. If it is determined that the method should terminate, then the method may end. However, if at214, it is determined that the method should not terminate, then the method may continue back to step202to intercept a frame of the screen image as previously described.

It may be appreciated thatFIG. 2provides only an illustration of one implementation and does not imply any limitations with regard to how different embodiments may be implemented. Many modifications to the depicted environments may be made based on design and implementation requirements. For example, as previously described, the present embodiment may be implemented in hardware via a graphics display adapter to apply to either a subset or complete screen coverage and may be made software selectable as needed.

Referring now toFIG. 3, an example300of an intercepted photographic image in accordance with one embodiment is depicted. Upon intercepting the image and generating a user configurable subset of Z blank subset frames358(as previously described with respect to the method explained inFIG. 2) within the Photographic Capture Prevention Program108A and108B (FIG. 1), the intercepted photographic image302may include a certain number of columns (i.e. N304) that correspond to the X-axis of the intercepted image and a certain number of rows (i.e. M306) that correspond to the Y-axis. As previously explained, N304and M306may represent numbers configurable by the user in one implementation or, in an alternate implementation, may be automatically generated by the Photographic Capture Prevention Program108A and108B (FIG. 1). Within the Photographic Capture Prevention Program108A and108B (FIG. 1), the values of N and M may be used to formulate the number of subsections308-356(i.e. N×M). For example, if the number of columns N304equals 5 (N=5) and the number of rows M306equals 5 (M=5), then the number of subsections308-356represented on the intercepted image302is 25 (i.e. 5×5=25).

For example purposes, the method previously explained inFIG. 2may be implemented with respect toFIG. 3as follows. Within the Photographic Capture Prevention Program108A,108B (FIG. 1), the pseudo random number generator114(FIG. 1) may assign each of the 25 subsections to one of the Z subset frames358. Thereafter, in accordance with the method previously described inFIG. 2, the pseudo random number generator114(FIG. 1) may assign the 25 subsections308-356in a diagonal pattern (308-316) for displaying the subsections. Additionally, in accordance with alternate implementations, the pseudo random number generator114(FIG. 1) may implement other patterns, such as horizontal, vertical, scatter, etc., to map the subsections to the Z subset frames358. For example, in accordance withFIG. 3, the pseudo random number generator114(FIG. 1) may assign a random number, such as the integer “1,” to 5 subsections308,310,312,314, and316, which may be equal to (M×N)/Z. According to one implementation, these 5 subsections308,310,312,314, and316may all be mapped to the same subset frame360. Thereafter within the Photographic Capture Prevention Program108A,108B (FIG. 1), the same process may be implemented to map the remaining subsections318-356to the remaining subset frames362-368. In addition, mapping the subsections308-356to the subset frames360-368may occur in the order of the lowest generated pseudo random number to the highest generated pseudo random number (e.g. “1” in308-316to “5” in348-356) until all subsections308-356assigned a particular pseudo random number are mapped on the same subset frame360-368. Upon completion of the mapping of the subsections308-356, the subset frames360-368may be transmitted for projection at a frame rate that may allow for human visual recognition of the image on the computer display screen. However, according to the present embodiment, a singularly recognizable image of the screen may be prevented from being captured in a single snapshot by a photographic capture device, such as a camera. It may be appreciated thatFIG. 3provides only an illustration of one implementation of the distribution of the subsections on the subset frames and does not imply any limitations with regard to how different embodiments may be implemented. Many modifications to the depicted environments may be made based on design and implementation requirements.

User client computer102(FIG. 1), and network server112(FIG. 1) may include respective sets of internal components800a, band external components900a, billustrated inFIG. 4. Each of the sets of internal components800a, bincludes one or more processors820, one or more computer-readable RAMs822and one or more computer-readable ROMs824on one or more buses826, and one or more operating systems828and one or more computer-readable tangible storage devices830. The one or more operating systems828and the Photographic Capture Prevention Program108A (FIG. 1) in client computer102(FIG. 1) and Photographic Capture Prevention Program108B (FIG. 1) in network server computer112(FIG. 1) are stored on one or more of the respective computer-readable tangible storage devices830for execution by one or more of the respective processors820via one or more of the respective RAMs822(which typically include cache memory). In the embodiment illustrated inFIG. 4, each of the computer-readable tangible storage devices830is a magnetic disk storage device of an internal hard drive. Alternatively, each of the computer-readable tangible storage devices830is a semiconductor storage device such as ROM824, EPROM, flash memory or any other computer-readable tangible storage device that can store a computer program and digital information.

Each set of internal components800a, b, also includes a R/W drive or interface832to read from and write to one or more portable computer-readable tangible storage devices936such as a CD-ROM, DVD, memory stick, magnetic tape, magnetic disk, optical disk or semiconductor storage device. A software program, such as Photographic Capture Prevention Program108A (FIG. 1) and108B (FIG. 1), can be stored on one or more of the respective portable computer-readable tangible storage devices936, read via the respective R/W drive or interface832and loaded into the respective hard drive830.

Each set of internal components800a, balso includes network adapters or interfaces836such as a TCP/IP adapter cards, wireless Wi-Fi interface cards, or 3G or 4G wireless interface cards or other wired or wireless communication links. The Photographic Capture Prevention Program108A (FIG. 1) in client computer102(FIG. 1) and Photographic Capture Prevention Program108B (FIG. 1) in network server112(FIG. 1) can be downloaded to client computer102(FIG. 1) from an external computer via a network (for example, the Internet, a local area network or other, wide area network) and respective network adapters or interfaces836. From the network adapters or interfaces836, the Photographic Capture Prevention Program108A (FIG. 1) in client computer102(FIG. 1) and the Photographic Capture Prevention Program108B (FIG. 1) in network server computer112(FIG. 1) are loaded into the respective hard drive830. The network may comprise copper wires, optical fibers, wireless transmission, routers, firewalls, switches, gateway computers and/or edge servers.

Each of the sets of external components900a, bcan include a computer display monitor920, a keyboard930, and a computer mouse934. External components900a, bcan also include touch screens, virtual keyboards, touch pads, pointing devices, and other human interface devices. Each of the sets of internal components800a, balso includes device drivers840to interface to computer display monitor920, keyboard930and computer mouse934. The device drivers840, R/W drive or interface832and network adapter or interface836comprise hardware and software (stored in storage device830and/or ROM824).