มัวร์เนเบอร์ฮุด

จากวิกิพีเดีย สารานุกรมเสรี
(เปลี่ยนทางจาก Moore Neighborhood)
ละแวกใกล้เคียงมัวร์ประกอบด้วยเซลล์เก้าเซลล์ เซลล์ตรงกลางและแปดเซลล์ซึ่งล้อมรอบเซลล์กลาง

ในออโตเซลลูล่าร์ มัวร์เนเบอร์ฮุด (อังกฤษ: Moore neighborhood) คือช่องที่ถูกกำหนดบนพื้นที่ตารางสองมิติ และประกอบด้วยเซลล์หนึ่งตรงกลางและเซลล์ล้อมรอบอยู่ 8 เซลล์ ชื่อของมัวร์เนเบอร์ฮุด ได้รับชื่อมาจากเอ็ดเวิร์ด เอฟ. มัว ผู้บุกเบิกทฤษฎีเซลล์ออโตมาติก

ความสำคัญ[แก้]

เป็นหนึ่งในสองประเภทของพื้นละแวกที่ใช้มากที่สุด อีกประเภทหนึ่งคือละแวกใกล้เคียงวอน นิวแมน โดยผู้คนมักจะรู้จักในชื่อเกมแห่งชีวิตของคอนเวย์ ตัวอย่างการใช้งานละแวกใกล้เคียงมัวจะคล้าย ๆ กับเม็ดพิกเซล 8 จุดที่ล้อมรอบเม็ดพิเซลเม็ดหนึ่งบนคอมพิวเตอร์กราฟิก

ตัวอย่างการทำงานของอัลกอริทึม:

Input:A tessellation, T, containing a connected component P of black cells.
Output: A sequence B (b1, b2, ..., bk) of boundary pixels i.e. the contour.
Define M(a) to be the Moore neighborhood of pixel a.
Let p denote the current boundary pixel.
Let c denote the current pixel under consideration i.e. c is in M(p).
Let b denote the backtrack of c (i.e. neighbor pixel of p that was previously tested)
Begin
  Set B to be empty.
  From bottom to top and left to right scan the cells of T until a black pixel, s, of P is found.
  Insert s in B.
  Set the current boundary point p to s i.e. p=s
  Let b = the pixel from which s was entered during the image scan.
  Set c to be the next clockwise pixel (from b) in M(p).
  While c not equal to s do
    If c is black
      insert c in B
      Let b = p
      Let p = c
      (backtrack: move the current pixel c to the pixel from which p was entered)
      Let c = next clockwise pixel (from b) in M(p).
    else
      (advance the current pixel c to the next clockwise pixel in M(p) and update backtrack)
      Let b = c
      Let c = next clockwise pixel (from b) in M(p).
    end If
  end While
End

เงื่อนไขการสิ้นสุด[แก้]

เงื่อนไขการสิ้นสุดแบบดั้งเดิมคือหยุดหลังจากอยู่ที่พิกเซลเริ่มต้นเป็นครั้งที่สอง

สิ่งนี้จะจำกัดชุดของรูปแบบที่อัลกอริทึมจะเดินได้ อย่างสมบูรณ์ เงื่อนไขการหยุดปรับปรุงที่เสนอโดย Jacob Eliosoff คือการหยุดหลังจากป้อนพิกเซลเริ่มต้นเป็นครั้งที่สองในทิศทางเดียวกับที่คุณป้อนไว้ในตอนแรก

อ้างอิง[แก้]