3,194 research outputs found

    Rank Order Filters and Priority Queues

    Get PDF
    A derivation of a parallel algorithm for rank order filtering is presented. Both derivation and result differ from earlier designs: the derivations are less complicated and the result allows a number of different implementations. The same derivation is used to design a collection of priority queues. Both filters and priority queues are highly efficient: they have constant response time and small latency

    Memory-Adjustable Navigation Piles with Applications to Sorting and Convex Hulls

    Get PDF
    We consider space-bounded computations on a random-access machine (RAM) where the input is given on a read-only random-access medium, the output is to be produced to a write-only sequential-access medium, and the available workspace allows random reads and writes but is of limited capacity. The length of the input is NN elements, the length of the output is limited by the computation, and the capacity of the workspace is O(S)O(S) bits for some predetermined parameter SS. We present a state-of-the-art priority queue---called an adjustable navigation pile---for this restricted RAM model. Under some reasonable assumptions, our priority queue supports minimum\mathit{minimum} and insert\mathit{insert} in O(1)O(1) worst-case time and extract\mathit{extract} in O(N/S+lgS)O(N/S + \lg{} S) worst-case time for any SlgNS \geq \lg{} N. We show how to use this data structure to sort NN elements and to compute the convex hull of NN points in the two-dimensional Euclidean space in O(N2/S+NlgS)O(N^2/S + N \lg{} S) worst-case time for any SlgNS \geq \lg{} N. Following a known lower bound for the space-time product of any branching program for finding unique elements, both our sorting and convex-hull algorithms are optimal. The adjustable navigation pile has turned out to be useful when designing other space-efficient algorithms, and we expect that it will find its way to yet other applications.Comment: 21 page

    Hierarchical morphological segmentation for image sequence coding

    Get PDF
    This paper deals with a hierarchical morphological segmentation algorithm for image sequence coding. Mathematical morphology is very attractive for this purpose because it efficiently deals with geometrical features such as size, shape, contrast, or connectivity that can be considered as segmentation-oriented features. The algorithm follows a top-down procedure. It first takes into account the global information and produces a coarse segmentation, that is, with a small number of regions. Then, the segmentation quality is improved by introducing regions corresponding to more local information. The algorithm, considering sequences as being functions on a 3-D space, directly segments 3-D regions. A 3-D approach is used to get a segmentation that is stable in time and to directly solve the region correspondence problem. Each segmentation stage relies on four basic steps: simplification, marker extraction, decision, and quality estimation. The simplification removes information from the sequence to make it easier to segment. Morphological filters based on partial reconstruction are proven to be very efficient for this purpose, especially in the case of sequences. The marker extraction identifies the presence of homogeneous 3-D regions. It is based on constrained flat region labeling and morphological contrast extraction. The goal of the decision is to precisely locate the contours of regions detected by the marker extraction. This decision is performed by a modified watershed algorithm. Finally, the quality estimation concentrates on the coding residue, all the information about the 3-D regions that have not been properly segmented and therefore coded. The procedure allows the introduction of the texture and contour coding schemes within the segmentation algorithm. The coding residue is transmitted to the next segmentation stage to improve the segmentation and coding quality. Finally, segmentation and coding examples are presented to show the validity and interest of the coding approach.Peer ReviewedPostprint (published version

    Selection from read-only memory with limited workspace

    Full text link
    Given an unordered array of NN elements drawn from a totally ordered set and an integer kk in the range from 11 to NN, in the classic selection problem the task is to find the kk-th smallest element in the array. We study the complexity of this problem in the space-restricted random-access model: The input array is stored on read-only memory, and the algorithm has access to a limited amount of workspace. We prove that the linear-time prune-and-search algorithm---presented in most textbooks on algorithms---can be modified to use Θ(N)\Theta(N) bits instead of Θ(N)\Theta(N) words of extra space. Prior to our work, the best known algorithm by Frederickson could perform the task with Θ(N)\Theta(N) bits of extra space in O(NlgN)O(N \lg^{*} N) time. Our result separates the space-restricted random-access model and the multi-pass streaming model, since we can surpass the Ω(NlgN)\Omega(N \lg^{*} N) lower bound known for the latter model. We also generalize our algorithm for the case when the size of the workspace is Θ(S)\Theta(S) bits, where lg3NSN\lg^3{N} \leq S \leq N. The running time of our generalized algorithm is O(Nlg(N/S)+N(lgN)/lgS)O(N \lg^{*}(N/S) + N (\lg N) / \lg{} S), slightly improving over the O(Nlg(N(lgN)/S)+N(lgN)/lgS)O(N \lg^{*}(N (\lg N)/S) + N (\lg N) / \lg{} S) bound of Frederickson's algorithm. To obtain the improvements mentioned above, we developed a new data structure, called the wavelet stack, that we use for repeated pruning. We expect the wavelet stack to be a useful tool in other applications as well.Comment: 16 pages, 1 figure, Preliminary version appeared in COCOON-201

    MEMORY REQUEST SCHEDULER WITH MODULAR CONFIGURABLE MEMORY REQUEST PRIORITY COMPARING UNITS

    Get PDF
    An improved memory request scheduling system is disclosed. The system comprises one or more queues configured to store memory requests waiting to be issued to a memory. The system further comprises a memory request scheduler configured to determine an issuing schedule order of the memory requests. The issuing schedule order of the memory requests is determined using modular configurable memory request priority comparing function units that are connected together in a dynamically programmable evaluation order

    A Fast Alpha-tree Algorithm for Extreme Dynamic Range Pixel Dissimilarities

    Get PDF
    The α-tree algorithm is a useful hierarchical representation technique which facilitates comprehension of imagessuch as remote sensing and medical images. Most α-tree algorithms make use of priority queues to process image edgesin a correct order, but because traditional priority queues areinefficient in α-tree algorithms using extreme-dynamic-rangepixel dissimilarities, they run slower compared with other relatedalgorithms such as component tree. In this paper, we proposea novel hierarchical heap priority queue algorithm that canprocess α-tree edges much more efficiently than other stateof-the-art priority queues. Experimental results using 48-bitSentinel-2A remotely sensed images and randomly generatedimages have shown that the proposed hierarchical heap priorityqueue improved the timings of the flooding α-tree algorithm byreplacing the heap priority queue with the proposed queue: 1.68times in 4-N and 2.41 times in 8-N on Sentinel-2A images, and2.56 times and 4.43 times on randomly generated images

    A Fast Alpha-tree Algorithm for Extreme Dynamic Range Pixel Dissimilarities

    Get PDF
    The α-tree algorithm is a useful hierarchical representation technique which facilitates comprehension of imagessuch as remote sensing and medical images. Most α-tree algorithms make use of priority queues to process image edgesin a correct order, but because traditional priority queues areinefficient in α-tree algorithms using extreme-dynamic-rangepixel dissimilarities, they run slower compared with other relatedalgorithms such as component tree. In this paper, we proposea novel hierarchical heap priority queue algorithm that canprocess α-tree edges much more efficiently than other stateof-the-art priority queues. Experimental results using 48-bitSentinel-2A remotely sensed images and randomly generatedimages have shown that the proposed hierarchical heap priorityqueue improved the timings of the flooding α-tree algorithm byreplacing the heap priority queue with the proposed queue: 1.68times in 4-N and 2.41 times in 8-N on Sentinel-2A images, and2.56 times and 4.43 times on randomly generated images

    Queue scheduling the Alan Cousins Telescope

    Get PDF
    The Alan Cousins Telescope is a 0.75-m automatic photoelectric telescope situated at the South African Astronomical Observatory, in Sutherland. The telescope was designed and built to execute a range of photometry programmes, but is used mainly for the long-term monitoring of variable stars. In addition, there is the potential for target-of-opportunity observations of unanticipated events, such as gamma ray bursts, and anticipated events such as occultations. Ultimately the telescope is intended to be a fully robotic telescope with limited operational support needs. Some advance toward this goal has been made by a full hardware interface to allow queue executions of observations. The next phase is the implementation of an automated scheduler that will generate a queue of valid observations for each night of observation. Queue scheduling algorithms are widely used in astronomy and the aim of this dissertation is to present a strawman scheduler that will generate the nightly observation queue. The main design of the scheduler is based on a merit-based system implemented at the STELLA robotic observatory, paired with the scheduling algorithms used by SOFIA. The main drawback of the telescope is that it does not currently accommodate dynamically changing weather conditions. As a consequence, the main scheduling constraints are observation parameters, instrument ability, and for monitoring type observations, observation time window constraints
    corecore