Image Rotation via Transposition and Interleaving

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing image rotation methods, particularly in portable terminals, face inefficiencies when applying Single Instruction Multiple Data (SIMD) technology for 90-degree or 270-degree rotations due to its limitation in processing consecutive data only.

Innovation Solution

The proposed method involves loading each row of pixels into a load memory vector, performing transposition and interleaving operations in a specific sequence, and storing the vectors in reverse order to efficiently rotate 2n×2n pixel images, utilizing a controller with interleaving and transposition units to achieve effective image rotation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If SIMD technology is used for image rotation, then data processing speed is improved, but it cannot effectively process 90 degree or 270 degree image rotation due to its limitation of processing only consecutive data

Engineering Contradiction:
Improvedata processing speedVSAvoidapplicability to 90 degree or 270 degree rotation
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The image rotation process is divided into multiple stages: loading consecutive data into SIMD registers, performing transposition operations to rearrange data positions, and executing interleaving operations to achieve final rotation. This segmentation allows SIMD technology to process consecutive data efficiently while achieving 90 or 270 degree rotation through multiple transformation steps.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Before performing the actual rotation, the method loads data into SIMD registers in a specific order and performs preliminary transposition operations to prepare the data in a state that enables subsequent interleaving operations to complete the 90 or 270 degree rotation. This preliminary preparation allows SIMD to work with consecutive data while achieving non-consecutive rotation results.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If general image rotation method is used, then 90 degree or 270 degree rotation can be achieved, but data processing speed is not improved compared to conventional methods

Engineering Contradiction:
Improvecapability to rotate 90 degree or 270 degreeVSAvoiddata processing speed
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent replaces traditional mechanical image rotation operations with SIMD-based parallel processing operations. By using transposition and interleaving operations in SIMD registers, the method achieves 90 or 270 degree rotation at accelerated speeds compared to conventional sequential processing methods.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Manufacturing precision

If transposition and interleaving operations are performed multiple iterations, then image rotation accuracy is improved, but processing time increases

Engineering Contradiction:
Improveimage rotation accuracyVSAvoidprocessing time
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The method performs transposition and interleaving operations for a specific number of iterations (n iterations where n depends on image size) rather than exhaustive processing. This partial action approach achieves sufficient rotation accuracy for practical applications while avoiding unnecessary additional processing time that would result from excessive iterations.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS8681165B2Image rotation method and apparatus
Publication Date: 2014.03.25 SAMSUNG ELECTRONICS CO LTD
  • US8681165B2 patent drawing
  • US8681165B2 patent drawing
  • US8681165B2 patent drawing

AI summary

Provided is an image rotation method and apparatus for rotating an original image of 2n×2n pixels when n is a natural number greater than 1, including loading each row of pixels of the original image into a corresponding load memory vector; and, after the load step, for at least one iteration, performing a transposition operation for each matched load memory vector after matching the load memory vectors and, for zero or more iterations, an interleaving operation between each matched load memory vector after matching the load memory vectors, while the transposition step and the interleaving step are performed a total of n iterations.