2D Median Filtering via Partial Sorting and Diagonal Rearrangement
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current two-dimensional median filtering techniques are inefficient in identifying median values in 2D structures, particularly when dealing with unsorted or partially sorted data, as they often require full sorting of columns and rows, which can be computationally intensive and disrupt the sorting order in one dimension.
Innovation Solution
A method and system that iteratively adjust, sort, and rearrange 2D data blocks to identify median or Nth sorted values by discarding non-candidate elements, preserving the sorting order along rows and columns, allowing for partial sorting and diagonal rearrangement to efficiently locate median values in 2D structures of any shape and size.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If full sorting of columns and rows is performed to identify median values in 2D structures, then the median value can be accurately identified, but the computational complexity increases significantly and the sorting order in one dimension is disrupted
Solution Approach 1:
The patent segments the 2D data structure into rows and columns, performing sorting operations separately on each dimension. Instead of full sorting of the entire 2D structure, the method sorts rows first to identify candidate elements, then performs partial column sorting only on relevant candidates, significantly reducing computational complexity while maintaining median identification accuracy
Solution Approach 2:
The patent applies partial sorting rather than full sorting. After initial row sorting, only partial column sorting is performed on candidate elements that could potentially contain the median value. This partial action approach reduces the computational burden from O(n^4) to O(n^2) while still ensuring accurate median identification
2Measurement precision
If full sorting of columns and rows is performed to identify median values, then the median can be found, but the processing time increases significantly
Solution Approach 1:
The patent performs preliminary row sorting on the entire 2D structure before identifying candidate elements for median computation. This preliminary action organizes the data in a way that enables subsequent partial column sorting to be much faster, reducing overall processing time while maintaining accuracy in median value identification
Solution Approach 2:
After preliminary row sorting, the method performs partial column sorting only on candidate elements rather than full column sorting. This partial action significantly reduces processing time from O(n^4) to O(n^2) complexity while still ensuring the median value is accurately identified among the candidate set
3Measurement precision
If full sorting is performed on 2D data blocks, then median values can be identified, but the sorting order in one dimension is disrupted
Solution Approach 1:
The patent segments the sorting process into independent row and column operations. Row sorting is performed first and preserved, then partial column sorting is applied only to candidate elements. This segmentation ensures that row sorting order is maintained while column sorting provides the necessary organization for median identification without fully disrupting either dimension's structure
Data Source
AI summary
Embodiments may include receiving an input block of data having one or more rows wherein each row includes one or more elements. Embodiments may further include adjusting the input block of data to generate a two-dimensional sorted block of data and identifying at least one position within the two-dimensional sorted block of data that cannot contain a median value or a desired Nth sorted value. Embodiments may also include sorting the two-dimensional block of data along one or more columns to obtain one or more candidate elements that contain the median value or the desired Nth sorted value. Embodiments may include discarding at least one non-candidate element to generate one or more remaining elements and rearranging the one or more remaining elements such that a number of diagonal elements form a column. Embodiments may also include iteratively repeating some of the above operations until a desired value is identified.


