Jump to content

Chain code: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
No edit summary
ref cleanup
Line 10: Line 10:
Some popular chain codes include:
Some popular chain codes include:
* the [[Herbert Freeman|Freeman]] Chain Code of Eight Directions<ref name="fcce"/> (FCCE)
* the [[Herbert Freeman|Freeman]] Chain Code of Eight Directions<ref name="fcce"/> (FCCE)
* Directional [[Herbert Freeman|Freeman]] Chain Code of Eight Directions<ref name="dfcce"/> (DFCCE)
* Directional [[Herbert Freeman|Freeman]] Chain Code of Eight Directions<ref name="dfcce"/> (DFCCE)
* Vertex Chain Code<ref name="vcc"/> (VCC)
* Vertex Chain Code<ref name="vcc"/> (VCC)
* Three OrThogonal symbol chain code<ref name="3ot"/> (3OT)
* Three OrThogonal symbol chain code<ref name="3ot"/> (3OT)
Line 21: Line 21:


In particular, FCCE, VCC, 3OT and DFCCE can be transformed from one to another
In particular, FCCE, VCC, 3OT and DFCCE can be transformed from one to another
<ref>{{cite journal|last=H|first=Sánchez-Cruz|author2=H. H. López-Valdéz|title=Equivalence of chain codes|journal=Electronic Imaging|volume=23|issue=1|pages=013031|year=2014|doi=10.1117/1.JEI.23.1.013031|bibcode=2014JEI....23a3031S}}</ref>
<ref>{{cite journal |last1=Sanchez-Cruz |first1=Hermilo |last2=Lopez-Valdez |first2=Hiram H. |date=January 2014 |title=Equivalence of chain codes |work=[[Journal of Electronic Imaging]] |volume=23 |issue=1 |at=013031 |bibcode=2014JEI....23a3031S |doi=10.1117/1.JEI.23.1.013031}}</ref>
[[File:Abstract Cell Coordinate Oriented Crack Code.png|thumb|right|Abstract Cell Coordinate Oriented Crack Code]]
[[File:Abstract Cell Coordinate Oriented Crack Code.png|thumb|right|Abstract Cell Coordinate Oriented Crack Code]]
A related blob encoding method is [[Crack code (Image Processing)|crack code]].<ref name="dpp"/> Algorithms exist to convert between chain code, crack code, and run-length encoding.
A related blob encoding method is [[Crack code (Image Processing)|crack code]].<ref name="dpp"/> Algorithms exist to convert between chain code, crack code, and run-length encoding.


A new trend of chain codes involve the utilization of biological behaviors. This started by the work of Mouring et al. <ref name="mouring"/> who developed an algorithm that takes advantage of the pheromone of ants to track image information. An ant releases a pheromone when they find a piece of food. Other ants use the pheromone to track the food. In their algorithm, an image is transferred into a virtual environment that consists of food and paths according to the distribution of the pixels in the original image. Then, ants are distributed and their job is to move around while releasing pheromone when they encounter food items. This helps other ants identify information, and therefore, encode information.
A new trend of chain codes involve the utilization of biological behaviors. This started by the work of Mouring et al. <ref name="mouring"/> who developed an algorithm that takes advantage of the pheromone of ants to track image information. An ant releases a pheromone when they find a piece of food. Other ants use the pheromone to track the food. In their algorithm, an image is transferred into a virtual environment that consists of food and paths according to the distribution of the pixels in the original image. Then, ants are distributed and their job is to move around while releasing pheromone when they encounter food items. This helps other ants identify information, and therefore, encode information.



== In use ==
== In use ==
Recently, the combination of [[move-to-front transform]] and adaptive [[run-length encoding]] accomplished efficient compression of the popular chain codes.<ref>{{cite journal|last=Žalik|first=Borut|author2=Lukač Niko|title=Chain code lossless compression using move-to-front transform and adaptive run-length encoding|journal=Signal Processing: Image Communication|volume=29|pages=96–106|year=2013|doi=10.1016/j.image.2013.09.002}}</ref>
Recently, the combination of [[move-to-front transform]] and adaptive [[run-length encoding]] accomplished efficient compression of the popular chain codes.<ref>{{cite journal |last1=Žalik |first1=Borut |last2=Lukač |first2=Niko |date=January 2014 |title=Chain code lossless compression using move-to-front transform and adaptive run-length encoding |work=Signal Processing: Image Communication |volume=29 |issue=1 |pages=96–106 |doi=10.1016/j.image.2013.09.002}}</ref>
Chain codes also can be used to obtain high levels of compression for image documents, outperforming standards such as [[DjVu]] and [[JBIG2]]. <ref name="dhou2019asoc"/> <ref name="dhou2019iot"/> <ref name="dhou2021fgcs"/> <ref name="dhou2018iccs"/> <ref name="dhou2020fgcs"/> <ref name="mouring"/>
Chain codes also can be used to obtain high levels of compression for image documents, outperforming standards such as [[DjVu]] and [[JBIG2]].<ref name="dhou2019asoc"/><ref name="dhou2019iot"/><ref name="dhou2021fgcs"/><ref name="dhou2018iccs"/><ref name="dhou2020fgcs"/><ref name="mouring"/><ref>{{cite journal |last1=Rodríguez-Díaz |first1=Mario A. |last2=Sánchez-Cruz |first2=Hermilo |date=July 2014 |title=Refined fixed double pass binary object classification for document image compression |work=[[Digital Signal Processing (journal)|Digital Signal Processing]] |volume=30 |pages=114–130 |doi=10.1016/j.dsp.2014.03.007}}</ref>
<ref>{{cite journal|last=M|first=Rodríguez-Díaz|author2=H. Sánchez-Cruz|title=Refined fixed double pass binary object classification for document image compression|journal=Digital Signal Processing|volume=30|pages=114–130|year=2014|doi=10.1016/j.dsp.2014.03.007}}</ref>



== See also ==
== See also ==
Line 41: Line 38:
== References ==
== References ==
<references>
<references>
<ref name="fcce">H. Freeman. [http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=5219197&tag=1 On the encoding of arbitrary geometric configurations], IRE Transactions on Electronic Computers EC- 10(1961) 260-268.</ref>
<ref name="fcce">{{cite journal |last1=Freeman |first1=Herbert |date=June 1961 |title=On the Encoding of Arbitrary Geometric Configurations |work=[[IRE Transactions on Electronic Computers]] |volume=EC-10 |issue=2 |pages=260-268 |doi=10.1109/TEC.1961.5219197}}</ref>
<ref name="vcc">E. Bribiesca, [http://www.sciencedirect.com/science/article/pii/S0031320398001320 A new chain code], Pattern Recognition 32 (1999) 235–251.</ref>
<ref name="vcc">{{cite journal |last1=Bribiesca |first1=Ernesto |date=February 1999 |title=A new chain code |work=[[Pattern Recognition (journal)|Pattern Recognition]] |volume=32 |issue=2 |pages=235-251 |doi=10.1016/S0031-3203(98)00132-0}}</ref>
<ref name="3ot">H. Sánchez-Cruz, R. M. Rodríguez-Dagnino. [http://opticalengineering.spiedigitallibrary.org/article.aspx?articleid=1101693 Compressing bi-level images by means of a 3-bit chain code]. Optical Engineering. SPIE. 44 (9) 097004 (2005) 1-8.</ref>
<ref name="3ot">{{cite journal |last1=Sanchez-Cruz |first1=Hermilo |last2=Rodríguez-Dagnino |first2=Ramón M. |date=September 2005 |title=Compressing bilevel images by means of a three-bit chain code |work=[[Optical Engineering (journal)|Optical Engineering]] |volume=44 |issue=9 |at=097004 |bibcode=2005OptEn..44i7004S |doi=10.1117/1.2052793}}</ref>
<ref name="dfcce">Y.K. Liu, B.Zalik, [http://www.sciencedirect.com/science/article/pii/S0031320304003723 An efficient chain code with Huffman coding], Pattern Recognition 38 (4) (2005) 553-557.</ref>
<ref name="dfcce">{{cite journal |last1=Liu |first1=Yong Kui |last2=Žalik |first2=Borut |date=April 2005 |title=An efficient chain code with Huffman coding |work=[[Pattern Recognition (journal)|Pattern Recognition]] |volume=38 |issue=4 |pages=553-557 |doi=10.1016/j.patcog.2004.08.017}}</ref>
<ref name="dpp">A. Rosenfeld, A. C. Kak. [http://dl.acm.org/citation.cfm?id=578095 Digital Picture Processing, 2nd edition (1982)]. Page 220. Academic Press, Inc. Orlando, FL, USA.</ref>
<ref name="dpp">{{cite book |last1=Rosenfeld |first1=Azriel |last2=Kak |first2=Avinash C. |date=1982 |chapter=Chapter 11 - Representation |title=Digital Picture Processing |volume=2 |edition=2nd |page=220 |publisher=[[Academic Press]] |bibcode=1982dpp..book.....R |doi=10.1016/B978-0-12-597302-1.50010-4 |isbn=0-12-597302-0}} {{ISBN|0-12-597301-2|0-12-597302-0}}</ref>
<ref name="umcc">B. Žalik, D. Mongus, Y.-K. Liu, N. Lukač, [http://www.sciencedirect.com/science/article/pii/S1047320316300050 Unsigned Manhattan Chain Code], Journal of Visual Communication and Image Representation 38 (2016) 186-194.</ref>
<ref name="umcc">{{cite journal |last1=Žalik |first1=Borut |last2=Mongus |first2=Domen |last3=Liu |first3=Yong-Kui |last4=Lukač |first4=Niko |date=July 2016 |title=Unsigned Manhattan chain code |work=[[Journal of Visual Communication and Image Representation]] |volume=38 |pages=186-194 |doi=10.1016/j.jvcir.2016.03.001}}</ref>
<ref name="mouring"> Mouring, M., Dhou, K. & Hadzikadic, M. (2018). A Novel Algorithm for Bi-Level Image Coding and Lossless Compression based on Virtual Ant Colonies, in ‘3rd International Conference on Complexity, Future Information Systems and Risk’, Setubal - Portugal, pp. 72-78.</ref>
<ref name="mouring">{{cite conference |last1=Mouring |first1=Matthew |last2=Dhou |first2=Khaldoon |last3=Hadzikadic |first3=Mirsad |date=2018 |title=A Novel Algorithm for Bi-Level Image Coding and Lossless Compression based on Virtual Ant Colonies |book-title=Proceedings of the 3rd International Conference on Complexity, Future Information Systems and Risk |volume=1 |conference=COMPLEXIS 2018 |pages=72-78 |doi=10.5220/0006688400720078 |url=https://www.scitepress.org/Papers/2018/66884/ |access-date=2022-07-06}}</ref>
<ref name="dhou2020fgcs"> Dhou, K. (2020). ‘A new chain coding mechanism for compression stimulated by a virtual environment of a predator-prey ecosystem’, Future Generation Computer Systems 102, 650-669 </ref>
<ref name="dhou2020fgcs">{{cite journal |last1=Dhou |first1=Khaldoon |date=January 2020 |title=A new chain coding mechanism for compression stimulated by a virtual environment of a predator–prey ecosystem |work=[[Future Generation Computer Systems]] |volume=102 |pages=650-669 |doi=10.1016/j.future.2019.08.021}}</ref>
<ref name="dhou2018iccs"> Dhou, K. (2018). A novel agent-based modeling approach for image coding and lossless compression based on the wolf-sheep predation model, in ‘Computational Science - ICCS 2018’, Springer International Publishing, Cham, pp. 117-128. </ref>
<ref name="dhou2018iccs">{{cite conference |last1=Dhou |first1=Khaldoon |date=2018 |title=A Novel Agent-Based Modeling Approach for Image Coding and Lossless Compression Based on the Wolf-Sheep Predation Model |work=Computational Science ICCS 2018 |series=[[Lecture Notes in Computer Science|LNCS]] |volume=10861 |conference=ICCS 2018 |pages=117-128 |doi=10.1007/978-3-319-93701-4_9}}</ref>
<ref name="dhou2021fgcs">{{cite journal |last1=Dhou |first1=Khaldoon |last2=Cruzen |first2=Christopher |date=May 2021 |title=A highly efficient chain code for compression using an agent-based modeling simulation of territories in biological beavers |work=[[Future Generation Computer Systems]] |volume=118 |pages=1-13 |doi=10.1016/j.future.2020.12.016}}</ref>

<ref name="dhou2019iot">{{cite journal |last1=Dhou |first1=Khaldoon |last2=Cruzen |first2=Christopher |date=December 2019 |title=An Innovative Chain Coding Technique for Compression Based on the Concept of Biological Reproduction: An Agent-Based Modeling Approach |work=[[IEEE Internet of Things Journal]] |volume=6 |issue=6 |pages=9308-9315 |doi=10.1109/JIOT.2019.2912984}}</ref>
<ref name="dhou2021fgcs">Dhou, K. & Cruzen, C. (2021). ‘A highly efficient chain code for compression using an agent-based modeling simulation of territories in biological beavers’, Future Generation Computer Systems, 118, 1-13. </ref>
<ref name="dhou2019asoc">{{cite journal |last1=Dhou |first1=Khaldoon |date=June 2019 |title=An innovative design of a hybrid chain coding algorithm for bi-level image compression using an agent-based modeling approach |work=Applied Soft Computing |volume=79 |pages=94-110 |doi=10.1016/j.asoc.2019.03.024}}</ref>

<ref name="dhou2019iot">Dhou, K., & Cruzen, C. (2019). An innovative chain coding technique for compression based on the concept of biological reproduction: an agent-based modeling approach. IEEE Internet of Things Journal, 6(6), 9308-9315</ref>

<ref name="dhou2019asoc">Dhou, K. (2019). ‘An innovative design of a hybrid chain coding algorithm for bi-level image compression using an agent-based modeling approach’, Applied Soft Computing 79, 94-110.</ref>
</references>
</references>



Revision as of 20:26, 7 July 2022

A chain code is a lossless compression algorithm for monochrome images. The basic principle of chain codes is to separately encode each connected component, or "blob", in the image.

For each such region, a point on the boundary is selected and its coordinates are transmitted. The encoder then moves along the boundary of the region and, at each step, transmits a symbol representing the direction of this movement.

This continues until the encoder returns to the starting position, at which point the blob has been completely described, and encoding continues with the next blob in the image.

This encoding method is particularly effective for images consisting of a reasonably small number of large connected components.

Variations

Some popular chain codes include:

  • the Freeman Chain Code of Eight Directions[1] (FCCE)
  • Directional Freeman Chain Code of Eight Directions[2] (DFCCE)
  • Vertex Chain Code[3] (VCC)
  • Three OrThogonal symbol chain code[4] (3OT)
  • Unsigned Manhattan Chain Code[5] (UMCC)
  • Ant Colonies Chain Code[6] (ACCC)
  • Predator-Prey System Chain Code [7] [8] (PPSCC)
  • Beaver Territories Chain Code [9] (BTCC)
  • Biological Reproduction Chain Code [10] (BRCC)
  • Agent-Based Modeling Chain Code [11] (ABMCC)

In particular, FCCE, VCC, 3OT and DFCCE can be transformed from one to another [12]

Abstract Cell Coordinate Oriented Crack Code

A related blob encoding method is crack code.[13] Algorithms exist to convert between chain code, crack code, and run-length encoding.

A new trend of chain codes involve the utilization of biological behaviors. This started by the work of Mouring et al. [6] who developed an algorithm that takes advantage of the pheromone of ants to track image information. An ant releases a pheromone when they find a piece of food. Other ants use the pheromone to track the food. In their algorithm, an image is transferred into a virtual environment that consists of food and paths according to the distribution of the pixels in the original image. Then, ants are distributed and their job is to move around while releasing pheromone when they encounter food items. This helps other ants identify information, and therefore, encode information.

In use

Recently, the combination of move-to-front transform and adaptive run-length encoding accomplished efficient compression of the popular chain codes.[14] Chain codes also can be used to obtain high levels of compression for image documents, outperforming standards such as DjVu and JBIG2.[11][10][9][8][7][6][15]

See also

References

  1. ^ Freeman, Herbert (June 1961). "On the Encoding of Arbitrary Geometric Configurations". IRE Transactions on Electronic Computers. EC-10 (2): 260–268. doi:10.1109/TEC.1961.5219197.
  2. ^ Liu, Yong Kui; Žalik, Borut (April 2005). "An efficient chain code with Huffman coding". Pattern Recognition. 38 (4): 553–557. doi:10.1016/j.patcog.2004.08.017.
  3. ^ Bribiesca, Ernesto (February 1999). "A new chain code". Pattern Recognition. 32 (2): 235–251. doi:10.1016/S0031-3203(98)00132-0.
  4. ^ Sanchez-Cruz, Hermilo; Rodríguez-Dagnino, Ramón M. (September 2005). "Compressing bilevel images by means of a three-bit chain code". Optical Engineering. 44 (9). 097004. Bibcode:2005OptEn..44i7004S. doi:10.1117/1.2052793.
  5. ^ Žalik, Borut; Mongus, Domen; Liu, Yong-Kui; Lukač, Niko (July 2016). "Unsigned Manhattan chain code". Journal of Visual Communication and Image Representation. 38: 186–194. doi:10.1016/j.jvcir.2016.03.001.
  6. ^ a b c Mouring, Matthew; Dhou, Khaldoon; Hadzikadic, Mirsad (2018). "A Novel Algorithm for Bi-Level Image Coding and Lossless Compression based on Virtual Ant Colonies". Proceedings of the 3rd International Conference on Complexity, Future Information Systems and Risk. COMPLEXIS 2018. Vol. 1. pp. 72–78. doi:10.5220/0006688400720078. Retrieved 2022-07-06.
  7. ^ a b Dhou, Khaldoon (January 2020). "A new chain coding mechanism for compression stimulated by a virtual environment of a predator–prey ecosystem". Future Generation Computer Systems. 102: 650–669. doi:10.1016/j.future.2019.08.021.
  8. ^ a b Dhou, Khaldoon (2018). A Novel Agent-Based Modeling Approach for Image Coding and Lossless Compression Based on the Wolf-Sheep Predation Model. ICCS 2018. Computational Science – ICCS 2018. LNCS. Vol. 10861. pp. 117–128. doi:10.1007/978-3-319-93701-4_9.
  9. ^ a b Dhou, Khaldoon; Cruzen, Christopher (May 2021). "A highly efficient chain code for compression using an agent-based modeling simulation of territories in biological beavers". Future Generation Computer Systems. 118: 1–13. doi:10.1016/j.future.2020.12.016.
  10. ^ a b Dhou, Khaldoon; Cruzen, Christopher (December 2019). "An Innovative Chain Coding Technique for Compression Based on the Concept of Biological Reproduction: An Agent-Based Modeling Approach". IEEE Internet of Things Journal. 6 (6): 9308–9315. doi:10.1109/JIOT.2019.2912984.
  11. ^ a b Dhou, Khaldoon (June 2019). "An innovative design of a hybrid chain coding algorithm for bi-level image compression using an agent-based modeling approach". Applied Soft Computing. 79: 94–110. doi:10.1016/j.asoc.2019.03.024.
  12. ^ Sanchez-Cruz, Hermilo; Lopez-Valdez, Hiram H. (January 2014). "Equivalence of chain codes". Journal of Electronic Imaging. 23 (1). 013031. Bibcode:2014JEI....23a3031S. doi:10.1117/1.JEI.23.1.013031.
  13. ^ Rosenfeld, Azriel; Kak, Avinash C. (1982). "Chapter 11 - Representation". Digital Picture Processing. Vol. 2 (2nd ed.). Academic Press. p. 220. Bibcode:1982dpp..book.....R. doi:10.1016/B978-0-12-597302-1.50010-4. ISBN 0-12-597302-0. ISBN 0-12-597301-2, 0-12-597302-0
  14. ^ Žalik, Borut; Lukač, Niko (January 2014). "Chain code lossless compression using move-to-front transform and adaptive run-length encoding". Signal Processing: Image Communication. 29 (1): 96–106. doi:10.1016/j.image.2013.09.002.
  15. ^ Rodríguez-Díaz, Mario A.; Sánchez-Cruz, Hermilo (July 2014). "Refined fixed double pass binary object classification for document image compression". Digital Signal Processing. 30: 114–130. doi:10.1016/j.dsp.2014.03.007.