Browser Capability Verification for Dynamic Image Processing Library Selection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing terminal devices and image processing systems face challenges in determining the appropriate image processing library to use based on the capabilities of the web browser, leading to inefficiencies in image processing tasks such as trapezoidal correction, binarization, and conversion processing.
Innovation Solution
The system verifies the browser's capabilities using verification information and acquires either a first image processing library written in WebAssembly (WASM) or a second library written in JavaScript (JS) to perform image processing tasks, ensuring that the most suitable library is used for efficient processing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If the system uses a single image processing library regardless of browser capabilities, then the device complexity is reduced, but the processing efficiency and reliability deteriorate
Solution Approach 1:
The system dynamically selects between different image processing libraries (WebAssembly-based or JavaScript-based) based on the browser's capability verification results. This dynamic adaptation allows the system to optimize processing efficiency for each specific browser environment without requiring a fixed, overly complex architecture that must support all possible scenarios.
Solution Approach 2:
The system changes the programming language parameter of the image processing library based on browser capabilities. When the browser supports WebAssembly, the system uses WebAssembly-based libraries for higher efficiency; otherwise, it falls back to JavaScript-based libraries. This parameter change resolves the contradiction by adapting the technical implementation to the runtime environment.
2Productivity
If the system verifies browser capabilities and selects appropriate libraries, then the processing efficiency is improved, but the device complexity increases
Solution Approach 1:
The system performs capability verification in advance before executing the actual image processing task. By determining whether the browser supports WebAssembly beforehand, the system can pre-select the appropriate image processing library, avoiding runtime errors and ensuring optimal performance without adding significant complexity to the overall system architecture.
Solution Approach 2:
The capability verification mechanism acts as an intermediary between the browser environment and the image processing library selection. This intermediary layer determines which library to load based on browser capabilities, simplifying the complexity management by centralizing the decision-making process in a dedicated verification step rather than distributing complexity throughout the entire system.
3Speed
If the system uses WebAssembly-based library, then the processing speed is improved, but the browser compatibility deteriorates
Solution Approach 1:
The system maintains copies of both WebAssembly-based and JavaScript-based image processing libraries. The capability verification determines which copy to use, allowing the system to achieve high processing speed when possible (WebAssembly) while maintaining broad compatibility (JavaScript fallback). This copying strategy resolves the contradiction by having both versions available but only activating the appropriate one based on browser capabilities.
Data Source
AI summary
A terminal device, an information processing method, and a non-transitory recording medium. The terminal device verifies whether a browser of the terminal device is capable of performing predetermined image processing using verification information on a photographic subject based on a capturing operation on the photographic subject, based on determination that the browser is capable of performing the predetermined image processing, acquires a first image processing library written in a first programming language to perform the predetermined image processing and display a result of the predetermined image processing performed on a screen of the terminal device, and based on determination that the browser is incapable of performing the predetermined image processing, acquires a second image processing library written in a second programming language to perform the predetermined image, and display a result of the predetermined image processing performed on the screen of the terminal device.


