请输入您要查询的百科知识:

 

词条 Livewire Segmentation Technique
释义

  1. Livewire Segmentation

  2. Livewire Algorithm

  3. Extension to 3D

  4. See also

  5. References

  6. External links

{{multiple issues|{{more citations needed|date=December 2012}}{{Cleanup rewrite|date=May 2009}}{{COI|date=May 2009}}
}}Livewire, is a segmentation technique which allows a user to select regions of interest to be extracted quickly and accurately, using simple mouse clicks.[1] It is based on the lowest cost path algorithm, by Edsger W. Dijkstra. Firstly Convolve the image with a Sobel filter to extract edges. Each pixel of the resulting image is a vertex of the graph and has edges going to the 4 pixels around it, as up, down, left, right. The edge costs are defined based on a cost function. In 1995, Eric N. Mortensen and William A. Barrett made some extension work on livewire segmentation tool, which is known as Intelligent Scissors.[2] In 2010, Leo Grady extended the Livewire algorithm to 3D segmentation.[3]

Livewire Segmentation

The user sets the starting point clicking on an image’s pixel, known as an anchor. Then, as he starts to move the mouse over other points, the smallest cost path is drawn from the anchor to the pixel where the mouse is over, changing itself if the user moves the mouse. If he wants to choose the path that is being displayed, he simply clicks the image again.

One can easily see in the right image, that the places where the user clicked to outline the desired region of interest are marked with a small square. It is also easy to see that the livewire has snapped on the image's borders.

Livewire Algorithm

Convolve the image with a Sobel filter to extract edges. Using this filtered image Create a graph using pixels as nodes with edges in four directions (up, down, left right).[1] Edges are weighted with features gathered from the sobel filter making it less costly to stay on an edge. Several different cost methods are possible but the most important is the gradient magnitude[1]

Live-Wire 2-D DP graph search algorithm in pseudocode [2]
     Input:           s                       {Start (or seed) pixel.}           l('''q,r''')                  {Local cost function for link between pixels q and r.}      Data Structures:           L                       {List of active pixels sorted by total cost (initially empty).}           N('''q''')                    {Neighborhood set of q (contains 8 neighbors of pixel).}            e('''q''')                    {Boolean function indicating if q has been expanded/processed.}           g('''q''')                    {Total cost function from seed point to q.}     Output:            p                       {Pointers from each pixel indicating the minimum cost path.}     Algorithm:           g(s) ← 0; L ← s;       {Initialize active list with zero cost seed pixel.}           '''''while''''' L≠∅ '''''do begin'''''      {While still points to expand.}                     '''q''' ← min(L);             {Remove minimum cost pixel q from active list.}                     e('''q''') ←TRUE;             {Mark q as expanded (i.e., processed).}                    '''''for each''''' r∈N(q) '''''such that''''' not e('''r''') '''''do begin'''''                                gtmp ←g('''q''')+l('''q,r''');           {Compute total cost to neighbor.}                                '''''if'' r'''∈L '''''and''''' gtmp

Extension to 3D

In 2010, Leo Grady extended the Livewire algorithm to 3D.[3] This extension treated the 2D Livewire algorithm as enabling a user to specify a 0-dimensional boundary (two points) and finding the minimal 1-dimensional coboundary (curve) connecting those points, where the minimum is defined in terms of image properties. In order to extend the algorithm to 3D, the user is instead asked to specify one or more 1-dimensional boundaries (closed curves) and the algorithm finds the minimal 2-dimensional coboundary (surface) bounded by the 1-dimensional curves, where the minimum surface is defined in terms of image properties. This 3D extension of Livewire leans heavily on concepts of Discrete Exterior Calculus to reinterpret the 2D Livewire algorithm from the standpoint of boundary/coboundary operators and then apply these concepts in 3D. An efficient algorithm for computing the 3D minimal surface is also provided in the Grady paper.

See also

  • Segmentation

References

1. ^BAGGIO, Daniel L´elis. GPGPU Based Image Segmentation Livewire Algorithm Implementation. 2007. 108f. Thesis of Master in Science – Technological Institute of Aeronautics, S˜ao Jos´e dos Campos. http://gpuwire.googlecode.com/files/Master%20Thesis%20-%20Updated%20February%2015th.pdf
2. ^MORTENSEN, E. N.; BARRETT, W. A. Intelligent scissors for image composition. In: SIGGRAPH ’95: Proceedings of the 22nd annual conference on Computer graphics and interactive techniques. New York, NY, USA: ACM Press, 1995. p. 191–198. {{ISBN|0-89791-701-4}}.
3. ^Leo Grady, “Minimal Surfaces Extend Shortest Path Segmentation Methods to 3D”, IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 32, No. 2, pp. 321-334, Feb. 2010

External links

  • Open Source Java implementation of Livewire Image Segmentation Tool for ImageJ - Daniel Lelis Baggio
  • Coronary Segmentation video
  • [https://github.com/pdyban/livewire Open source Python implementation]

1 : Image segmentation

随便看

 

开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。

 

Copyright © 2023 OENC.NET All Rights Reserved
京ICP备2021023879号 更新时间:2024/11/11 6:08:49