Image Processing Apparatus Hardware Rotation with Dynamic Block Sizing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing image processing apparatuses face challenges in efficiently performing high-speed hardware rotation processes, particularly when dealing with larger rotation angles, as they require larger line memories, which can be inefficient and costly.
Innovation Solution
An image processing apparatus is designed with a line memory, block outputting unit, data writing unit, and controller, where a memory area of constant width in static RAM is allocated, allowing for efficient data storage and retrieval of image blocks based on the rotation angle, enabling flexible block sizes and modes for optimal processing speed and memory utilization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a line memory of larger size is used to perform hardware rotation process for larger rotation angles, then the rotation angle capability is improved, but the memory resource consumption increases
Solution Approach 1:
The patent divides the image into multiple blocks and processes each block separately through the rotation unit. By segmenting the image data into manageable blocks, the system can perform hardware rotation for various angles without requiring a single large line memory to hold the entire rotated image, thus reducing overall memory resource consumption while maintaining rotation angle capability.
Solution Approach 2:
The patent dynamically adjusts the block size based on the rotation angle. For larger rotation angles, smaller block sizes are used, which reduces the memory buffer requirements. This dynamic adaptation allows the system to handle different rotation angles efficiently without permanently allocating large memory resources, resolving the contradiction between rotation angle capability and memory consumption.
2Productivity
If rotation process is performed as software process, then the buffer size can be optimized for each rotation angle, but the processing speed decreases
Solution Approach 1:
The patent implements a segmented hardware rotation approach where the image is divided into blocks that are processed individually. This segmentation allows the hardware rotation unit to operate on smaller data units, improving processing speed while using a fixed-size line memory that doesn't need to scale with rotation angle, thus achieving high speed without proportionally increasing hardware complexity.
Solution Approach 2:
The patent changes the parameter of block size dynamically based on rotation angle requirements. By adjusting this parameter, the system can optimize the balance between processing speed and memory usage for different rotation scenarios, enabling hardware-based high-speed rotation without requiring complex reconfigurable hardware for each specific angle.
3Adaptability or versatility
If a fixed-size line memory is used for hardware rotation, then the device complexity is reduced, but the adaptability to different rotation angles decreases
Solution Approach 1:
The patent introduces dynamic block size adjustment based on rotation angle. The control unit determines the appropriate block size according to the required rotation angle, allowing the fixed-size line memory to adapt to different rotation scenarios. This dynamic parameter adjustment provides rotation angle flexibility without requiring variable memory size configuration, thus resolving the contradiction between adaptability and device complexity.
Solution Approach 2:
The patent uses parameter changes in block size to achieve adaptability across different rotation angles with a fixed memory structure. By modifying this software-controlled parameter, the system can handle various rotation angles efficiently without physically reconfiguring the memory size, maintaining simple hardware while achieving high versatility.
Data Source
AI summary
An image processing apparatus includes a line memory, a block outputting unit, a data writing unit, a data reading unit, and a controller. To the line memory, a memory area is allocated, and the memory area has a width of a constant number of words in a static RAM (Random Access Memory). The block outputting unit is configured to output image data of an image block obtained by dividing a document image. The data writing unit is configured to write the image data of the image block into the line memory. The data reading unit is configured to read the image data from the line memory word by word, and output the image data in an order corresponding to a rotation angle. The controller is configured to set a block size of the image block as a value corresponding to the rotation angle.


