Texture Repository for Mobile Image Processing Memory Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Image processing systems, especially on mobile devices, face challenges with high memory usage and processing power due to the expensive process of resizing textures to match the resolution needed for image manipulation.

Innovation Solution

A texture repository is introduced to manage image manipulation textures by retrieving or procedurally generating canvases, enabling caching and optimized texture handling based on device resources, providing a single interface for managing canvas interactions and storage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the image processing system resizes the standard canvas for the texture to the resolution needed for manipulating the target image, then the texture can be applied to the target image, but the memory usage and processing power increase significantly

Engineering Contradiction:
Improvetexture resolution adaptabilityVSAvoidmemory usage
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The system pre-generates and stores canvases at multiple standard resolutions (e.g., 64x64, 128x128, 256x256, 512x512, 1024x1024 pixels) during system initialization or idle periods. When a texture is needed, the system retrieves the appropriate pre-generated canvas based on the target image resolution, avoiding expensive runtime resizing operations and reducing memory usage during active processing.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system dynamically selects which pre-generated canvas resolution to use based on the actual needs of the target image. The texture repository maintains multiple resolution versions of each texture canvas and selects the most appropriate one at runtime, balancing between memory usage and image quality requirements. This dynamic selection avoids loading all high-resolution canvases into memory simultaneously.

Inventive Principle:
Principle #15Dynamics

2Adaptability or versatility

If the image processing system resizes the standard canvas for the texture to the resolution needed for manipulating the target image, then the texture can be applied to the target image, but the processing power consumption increases

Engineering Contradiction:
Improvetexture resolution adaptabilityVSAvoidprocessing power
Core Design Contradiction:
Adaptability or versatilityVSPower

Solution Approach 1:

The system performs the computationally intensive canvas generation and resizing operations in advance, during system initialization or idle periods, rather than during active image processing. This shifts the processing power demand from runtime to setup time, making the actual image manipulation operations much faster and less power-consuming.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates and stores multiple copies of texture canvases at different standard resolutions. Instead of resizing a single high-resolution canvas for each operation, the system retrieves the appropriate pre-generated copy, eliminating the need for repeated expensive resizing operations and reducing cumulative processing power consumption.

Inventive Principle:
Principle #26Copying

3Productivity

If multiple texture canvases at different resolutions are stored in memory, then the system can quickly retrieve and apply textures, but the memory usage increases

Engineering Contradiction:
Improvetexture retrieval speedVSAvoidmemory usage
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The system dynamically manages the texture canvas repository by loading only the most frequently used or currently needed canvases into fast memory (e.g., LRU cache). Less frequently used canvases are stored in slower storage and loaded on demand. This dynamic memory management maintains high retrieval speed for active textures while minimizing overall memory usage.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system segments the texture canvas storage into multiple tiers: frequently used canvases in fast memory (L1/L2 cache), recently used canvases in intermediate storage, and less frequently used canvases in permanent storage. This segmentation allows the system to maintain a small set of high-speed accessible canvases while preserving access to a larger collection, optimizing the balance between retrieval speed and memory usage.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9934596B2Texture repository for image processing applications
Publication Date: 2018.04.03 META PLATFORMS INC
  • US9934596B2 patent drawing
  • US9934596B2 patent drawing
  • US9934596B2 patent drawing

AI summary

A texture repository is provided for use with an image manipulation application. The texture repository provides a canvas to the image manipulation application for use with an image filter. The texture repository may provide an existing canvas matching the request from the image filter, or the texture repository may generate a new canvas for the request. The generated canvas may be procedurally generated to match the request, or the generated canvas may be resized from an existing canvas stored in a non-volatile storage or a cache.