Abstract:
One embodiment of an embedded device comprises an angle of rotation defining mechanism and a rotation mechanism. The angle of rotation defining mechanism is adapted to define an arbitrary angle of rotation for an image. The rotation mechanism is adapted to apply a rotation transformation angle to the image using the arbitrary and using only integer arithmetic such that pixels within the image are mapped to rotated positions.
Abstract:
A high performance orthogonal rotator for a graphics processor orthogonally rotates pixel regions in a bit map by an angle of 90 DEG or 270 DEG . Optionally, the pixel regions can be vertically mirrored as well as orthogonally rotated. Source data bytes from a source bit map are loaded into columns of a matrix array constructed from parallel registers forming the rows. Orthogonal rotation and vertical mirroring is accomplished by the order in which bytes are loaded from the source bit map and by the order in which bytes are read into a destination bit map. To accomplish a 90 DEG rotation without vertical mirroring, data bytes are first loaded into the matrix array columns beginning with the LSB column and ending with the MSB column. Then, data words are read beginning with the MSW located in the bottom register and ending with the LSW located in the top register. To achieve a 90 DEG rotation with vertical mirroring, data bytes are first loaded into the matrix array columns beginning with the LSB column and ending with the MSB column. Then, data words are read beginning with the LSW in the top register and ending with the MSW in the bottom register. To accomplish a 270 DEG rotation without vertical mirroring, data bytes are first loaded into the matrix array columns beginning with the MSB column and ending with the LSB column. Then, data words are read beginning with the LSW in the top register (108) and ending with the MSW in the bottom register. To effectuate a 270 DEG rotation with vertical mirroring, data bytes are first loaded into the matrix array columns beginning with the MSB column and ending with the LSB column. Then, data words are read beginning with the MSW in the bottom register and ending with the LSW in the top register.
Abstract:
A system for reorienting stored images to be displayed on a screen (18) having a fixed scan pattern originating at one corner of the screen (18) to compensate for rotating the screen includes means (19a) for determining a new scan origin for the image and for reordering the stored image data to compensate for the rotation of the screen (18).
Abstract:
Methods, systems, computer-readable media, and apparatuses for image processing and utilization are presented. In some embodiments, an image containing at a face of a user may be obtained using a mobile device. An orientation of the face of the user within the image may be determined using the mobile device. The orientation of the face of the user may be determined using multiple stages: (a) a rotation stage for controlling a rotation applied to a portion of the image, to generate a portion of rotated image, and (b) an orientation stage for controlling an orientation applied to orientation-specific feature detection performed on the portion of rotated image. The determined orientation of the face of the user may be utilized as a control input to modify a display rotation of the mobile device.
Abstract:
A system and method for controlling how images are displayed on a display screen of a portable computing device changes the orientation of the images on the display screen when the orientation of the portable computing device changes. If the orientation of the portable computing device is changing only infrequently, the orientation of the images on the display screen may be rapidly changed when the orientation of the portable computing device changes. If the orientation of the portable computing device is changing relatively frequently, the orientation of the images may not switch until after a delay period has expired after each change in orientation of the portable computing device occurs.
Abstract:
This disclosure describes a host controller configured to combine image data associated with left and right images of a 3D image to control a display consistent with an orientation for the display ( e.g. , a first and second plurality of active parallax barriers of the display). In response to an orientation for the display, the host controller may combine image data associated with respective left and right images of with a 3D image in a first or second interleaved format to be consistent with the orientation for the display. For example, the host controller may combine the image data to be line-interleaved or pixel interleaved, based on an orientation for the display. In this manner, the display may receive the combined image data and present the 3D image consistent with the orientation for the display, while reducing processing performed by the display to present the 3D image.
Abstract:
A video multiviewer system may include a plurality of video scalers operating in parallel for generating initially scaled video streams by performing video scaling in at least one dimension on a plurality of video input streams. The video multiviewer system may also include at least one video cross-point switcher coupled downstream from the video scalers, and a processing unit coupled downstream from the video cross-point switcher for generating additionally scaled video streams by performing additional video scaling on the initially scaled video streams. The video multiviewer system may also include a display cooperating with the processing unit for displaying multiple video windows based upon the additionally scaled video streams.
Abstract:
A video multiviewer system may include a plurality of video scalers operating in parallel for generating initially scaled video streams by performing video scaling in at least one dimension on a plurality of video input streams. The video multiviewer system may also include at least one video cross-point switcher coupled downstream from the video scalers, and a processing unit coupled downstream from the video cross-point switcher for generating additionally scaled video streams by performing additional video scaling on the initially scaled video stream. The video scalers and the processing unit may communicate through the video cross-point switcher using a serial digital interface.
Abstract:
A method for sampling a Bayer image having two dimensional planes of red, green and blue pixels, the method including the steps of: rotating the green plane by 45 degrees; sequentially sampling an m x m pixel block of the rotated image, where m is an integer greater than 1; providing an address for the m samples by determining a starting address for a first of the samples and thereafter applying a predetermined fixed sequence of offsets to obtain the addresses of the remaining samples. An apparatus for sampling a Bayer image having two dimensional planes of red, green and blue pixels, the apparatus including: input means for rotating the green plane by 45 degrees; processing means for sequentially sampling an m x m pixel block of the rotated image, where m is an integer greater than 1; address means for providing an address for the m samples by determining a starting address for a first of the samples and thereafter applying a predetermined fixed sequence of offsets to obtain the addresses of the remaining samples.
Abstract:
The inventive method and system includes a high speed computer algorithm (30) for rotating images stored in a memory of a computer (26), such as those captured by a CCD camera (22). The present invention is usable with on over-the-belt optical character recognition (OCR) reader (10) that captures a pixelized image of the surface of a parcel (14) as it moves along a conveyor (12). The preferred embodiment provides a method and system for obtaining a run-length encoded output image from a run-length encoded input image, wherein output image (17') is a rotated version of the input image (17). A predefined pixel mapping sequence for a rotation angle with a rational tangent is used to map image pixel data. Mapping image pixel data using a predefined pixel mapping sequence allows rotation without floating point computations, and allows the use of a reverse pixel mapping technique to map output runs from an input image in order to avoid the creation of holes or artifacts in the output image. The inventive method scales mapped output runs to preserve the aspect ratio of the rotated image. The inventive method selects the order in which to process the elements of the input run-length input table so as to directly create a run-length encoded output table.