คำถามติดแท็ก antialiasing

1
Anti-aliasing / Filtering ในการติดตามเรย์
ในการติดตามรังสี / การติดตามเส้นทางหนึ่งในวิธีที่ง่ายที่สุดในการต่อต้านนามแฝงของภาพคือการแทนที่ค่าพิกเซลและเฉลี่ยผลลัพธ์ IE แทนที่จะถ่ายภาพตัวอย่างทุกชิ้นผ่านจุดศูนย์กลางของพิกเซลคุณชดเชยตัวอย่างด้วยจำนวนเงินหนึ่ง ในการค้นหาทั่วอินเทอร์เน็ตฉันได้พบสองวิธีที่แตกต่างกันในการทำสิ่งนี้: สร้างตัวอย่างอย่างไรก็ตามคุณต้องการและชั่งน้ำหนักผลลัพธ์ด้วยตัวกรอง ตัวอย่างหนึ่งคือPBRT สร้างตัวอย่างที่มีการแจกแจงเท่ากับรูปร่างของตัวกรอง สองตัวอย่างคือขนาดเล็กและทังสเตนเรนเดอร์ของBenedikt Bitterli สร้างและชั่งน้ำหนัก กระบวนการพื้นฐานคือ: สร้างตัวอย่างอย่างไรก็ตามคุณต้องการ (ลำดับแบบสุ่มแบ่งชั้นความคลาดเคลื่อนต่ำ ฯลฯ ) ชดเชยเรย์ของกล้องโดยใช้สองตัวอย่าง (x และ y) แสดงภาพด้วยรังสี คำนวณน้ำหนักโดยใช้ฟังก์ชั่นตัวกรองและระยะห่างของตัวอย่างโดยอ้างอิงจากจุดศูนย์กลางพิกเซล ตัวอย่างเช่น Box Filter, Tent Filter, Gaussian Filter, ฯลฯ ) ใช้น้ำหนักกับสีจากการเรนเดอร์ สร้างเป็นรูปร่างของตัวกรอง หลักฐานพื้นฐานคือการใช้การสุ่มตัวอย่างการแปลงผกผันเพื่อสร้างตัวอย่างที่กระจายตามรูปร่างของตัวกรอง ตัวอย่างเช่นฮิสโตแกรมของตัวอย่างที่กระจายในรูปร่างของเกาส์เซียนจะเป็น: สิ่งนี้สามารถทำได้อย่างแน่นอนหรือโดยการ binning ฟังก์ชั่นเป็น pdf / cdf แยก smallptใช้ cdf ผกผันที่แน่นอนของตัวกรองเต็นท์ ตัวอย่างของวิธีการ binning สามารถพบได้ที่นี่ คำถาม …

2
กระบวนการแรสเตอร์ไรเซชันเวกเตอร์ของ Illustrator คืออะไร
ขณะนี้ฉันกำลังพยายามที่จะเข้าใจบางสิ่งเกี่ยวกับแรสเตอร์กราฟิกเวกเตอร์และวิธีการต่าง ๆ ที่นำไปใช้ในแอปพลิเคชันประเภทต่างๆ ฉันทดสอบและเปรียบเทียบโปรแกรมไม่กี่โปรแกรมและสังเกตว่ามีความแตกต่างที่สำคัญในวิธีการลดรอยหยักที่ทำงานในกระบวนการแรสเตอร์ไรเซชันฉันสนใจพฤติกรรมการแสดงผลใน Illustrator เป็นพิเศษ คุณจะเห็นว่าทำไมโดยการอ่านเพิ่มเติม สำหรับการทดสอบของฉันฉันใช้องค์ประกอบสามเหลี่ยมง่าย ๆ ที่จัดเป็นรูปหกเหลี่ยมผิดปกติด้วยสีที่แตกต่างกัน โปรแกรมกราฟิกแบบเวกเตอร์ ที่นี่มีกราฟิกแบบเวกเตอร์สามรายการใน Illustrator, Affinity และ Inkscape (ภาพที่สร้างใน Affinity และ Inkscape จะเหมือนกันทุกประการ) อย่างที่คุณเห็นมีเส้นสีขาวที่ไม่ต้องการบนแต่ละขอบในภาพที่แสดงด้วย Affinity และ Inkscape การลดรอยหยักไม่ได้ทำให้บริเวณนี้เต็มไปด้วยสีทึบซึ่งส่งผลให้เกิดช่องว่างเล็ก ๆ ระหว่างรูปร่างที่อยู่ติดกัน แม้ว่าจะไม่มีช่องว่างในการเรนเดอร์ Illustrator แต่ขอบของรูปร่างนั้นดูเรียบเนียนเหมือนกับ Affinity render นี่คือภาพที่แสดงพื้นที่เดียวกันของภาพแต่ละภาพที่มีการลดขนาด มีความแตกต่างที่ลึกซึ้งมากระหว่างสองภาพ การสร้าง Affinity นั้นเรียบเล็กน้อย แต่ก็แทบจะเป็นไปไม่ได้ที่จะเห็นความแตกต่างเมื่อมองภาพในขนาดดั้งเดิม เบราว์เซอร์ การแสดงผล SVG การแสดงกราฟิกเดียวกันที่ส่งออกเป็น SVG ในเบราว์เซอร์นั้นดูคล้ายกับภาพแรสเตอร์ที่เกิดจาก Affinity และ Inkscape มีความแตกต่างเล็ก ๆ …

2
Subpixel Rendering สำหรับ Ray Tracer
ในการแสดงผลตัวอักษรมันเป็นเรื่องธรรมดาที่จะใช้การแสดงผล subpixel แนวคิดพื้นฐานที่นี่คือการแบ่งพิกเซลออกเป็นองค์ประกอบ RGB แล้วคำนวณค่าสำหรับแต่ละแยกต่างหาก เนื่องจากแต่ละองค์ประกอบมีขนาดเล็กกว่าทั้งพิกเซลการลดรอยหยักคุณภาพสูงจึงเป็นไปได้ เห็นได้ชัดว่ามีวิธีคล้ายกันในการทำเช่นเดียวกันกับเครื่องตรวจจับรังสี คุณทำการกรองการสร้างใหม่ในแต่ละช่องย่อยแยกจากกัน ฉันรู้สึกประหลาดใจที่อย่างไรก็ตามฉันไม่สามารถหาการอ้างอิงถึงตัวสืบหารังสีที่ทำสิ่งนี้ได้ โดยเฉพาะอย่างยิ่งหากคุณทำการเรนเดอร์สเปคตรัมเรียบร้อยแล้วนี่เป็นสิ่งที่ควรทำ มีบทความนี้จากวารสารที่ฉันไม่เคยได้ยินซึ่งดูเหมือนว่าจะเกี่ยวข้องกัน แต่โดยรวมแล้วการแสดงผลพิกเซลย่อยดูเหมือนจะไม่เป็นเรื่องปกติ คำถามของฉัน: ทำไมไม่ ?


4
Anti Aliasing ถูกนำไปใช้ในการติดตาม Ray อย่างไร
หลังจากที่ได้อ่านบทความไม่กี่ออนไลน์ผมมั่นใจได้ว่าผม clueless เกี่ยวกับวิธีการทำงานป้องกันนามแฝงเมื่อใช้ Ray Tracing ทั้งหมดที่ฉันเข้าใจว่าโสดพิกเซล / เรย์ถูกแบ่งออกเป็น 4 ย่อยพิกเซลและ 4 รังสีมากกว่า 1 มีใครช่วยอธิบายวิธีการนี้ให้สำเร็จ (ควรมีรหัส)?

2
อะไรคือเหตุผลพื้นฐานในการต่อต้าน aliasing โดยใช้ตัวอย่างสุ่มจำนวนมากภายในพิกเซล
ในกราฟิกมันเป็นเรื่องธรรมดาที่จะเก็บตัวอย่างหลาย ๆ อันภายในขอบเขตของพิกเซลและรวมเข้าด้วยกัน (โดยทั่วไปแล้วจะทำการเฉลี่ย) สำหรับสีพิกเซลตัวอย่างสุดท้าย นี่เป็นผลของการต่อต้าน aliasing ภาพ ในแง่หนึ่งสิ่งนี้สมเหตุสมผลสำหรับฉันเพราะสิ่งที่คุณกำลังทำอย่างมีประสิทธิภาพคือการรวมสีของพิกเซลเหนือพื้นที่ที่พิกเซลแสดง ในแนวความคิดนี้การสุ่มตัวอย่างเฉลี่ย "สุ่ม" น่าจะเป็นการตั้งค่าที่เหมาะสำหรับการรวมกันของ monte carlo ("สุ่ม" อาจแบ่งเป็นชั้นเสียงตามสีน้ำเงินลำดับความคลาดเคลื่อนต่ำเป็นต้น) ในทางกลับกันสิ่งนี้รู้สึกผิด (หรืออย่างน้อยก็ไม่ถูกต้องเท่าที่ควร) จากมุมมองการประมวลผลสัญญาณดิจิตอล จากมุมมองดังกล่าวรู้สึกว่าเราได้รับตัวอย่างจำนวนมากจากนั้นลดขนาดตัวอย่างลงโดยใช้ตัวกรองกล่อง (เบลอกล่อง) เพื่อรับค่าพิกเซลสุดท้าย ในแง่นี้ดูเหมือนว่าสิ่งที่ดีที่สุดที่ควรทำคือใช้การกรองแบบ sinc แทนที่จะใช้ค่าเฉลี่ยตัวอย่าง ฉันเห็นว่าตัวกรองกล่องเป็นค่าประมาณที่ถูกกว่าในการคิดตามเส้นเหล่านี้ นี่ทำให้ฉันสับสนเล็กน้อย แนวคิดหลักที่เรากำลังรวมพื้นที่พิกเซลและค่าเฉลี่ยถูกต้องหรือไม่? หรือว่าเราเป็นกลุ่มตัวอย่างและควรใช้ sinc แต่ใช้ตัวกรองแบบกล่องเพราะรวดเร็ว หรือเป็นอย่างอื่นอย่างสิ้นเชิง? เกี่ยวข้องกับเล็กน้อย: การลบรอยหยัก / การกรองในการติดตามเรย์

1
การวาดเส้นที่ตัดกันอย่างรวดเร็ว
อัลกอริธึมไลน์ของ Bresenham เป็นวิธีการวาดเส้นตรงโดยใช้การดำเนินการจำนวนเต็มอย่างรวดเร็วเท่านั้น (การบวกการลบและการคูณด้วย 2) อย่างไรก็ตามมันสร้างสายนามแฝง มีวิธีที่รวดเร็วในการวาดเส้นที่ตัดกันหรือไม่?

2
กฎการลดรอยหยักย่อยพิกเซล
เมื่อเร็ว ๆ นี้ฉันมีปัญหากับการลบรอยหยักของพิกเซลย่อยซึ่งทำให้เกิดสีที่รุนแรงมากและทำให้ฉันสงสัยว่ามันควรจะทำอย่างไรอย่างถูกต้อง: ฉันได้วาดบางกรณีของไทล์สีดำที่ครอบคลุมหนึ่งในสามของพิกเซลด้านล่าง สีตรงกับสีที่ฉันเห็นอย่างไรก็ตามเมื่อฉันดูข้อความที่ตัดออกอย่างถูกต้องผลลัพธ์จะไม่สดใสและน่ารำคาญ: ฉันคิดว่าจะต้องมีความสมดุลระหว่างความเข้มแสงที่ดีและสีที่เหมาะสม วิธีการใดที่ใช้สำหรับการลดรอยหยักของพิกเซลย่อยที่ให้ผลลัพธ์ที่ดีเช่นนั้น? ปรับปรุง: ฉันแสดงกาน้ำชาสีขาวเป็นรูปภาพที่มีความกว้าง 3x และมีการสุ่มหลายภาพ ด้านล่างฉันเปรียบเทียบค่าเฉลี่ยทุก 3 พิกเซลด้วยการกำหนดแต่ละค่าเป็น RGB สียังดูสว่างเกินไปในบางกรณี (โดยเฉพาะอย่างยิ่งเมื่อเทียบกับตัวอย่างข้างต้นจากที่นี่ ) ไม่ใช่ว่าโทรศัพท์ของฉันจับภาพได้ดี ตกลงดังนั้นจอภาพของฉันจึงต้องปัดฝุ่นเล็กน้อย

1
ฉันจะคำนวณการครอบคลุมของเส้นโค้งวิเคราะห์ที่ทับซ้อนกันได้อย่างแม่นยำได้อย่างไร
การลดรอยหยักของรูปร่าง 2D จะลดขนาดลงเพื่อคำนวณเศษส่วนของพิกเซลที่ครอบคลุมโดยรูปร่าง สำหรับรูปร่างที่ไม่เหลื่อมซ้อนกันอย่างง่ายนี่ไม่ใช่เรื่องยากเกินไป: คลิปรูปร่างกับสี่เหลี่ยมพิกเซลและคำนวณพื้นที่ของรูปร่างที่ได้ แต่มันจะยากขึ้นหากมีหลายรูปร่างซ้อนทับพิกเซลเดียวกัน เพียงแค่การสรุปพื้นที่สามารถทำให้ความครอบคลุมที่คำนวณได้นั้นสูงเกินไปหากมันละเลยปริมาณที่รูปร่างหนึ่งครอบคลุมอีกรูปร่างหนึ่ง ตัวอย่างเช่นดูส่วนข้อ จำกัด ของบทความนี้ในการแสดงผลตัวอักษร คุณอาจอยู่ในสถานการณ์ที่เส้นโค้งทั้งสองมาจากวัตถุต่าง ๆ ที่มีสีต่างกัน (ดังนั้นจึงไม่เกี่ยวกับความครอบคลุมทั้งหมดสำหรับการรวมกันของสองรูปร่าง แต่ครอบคลุมแต่ละส่วนแยกจากกัน) สิ่งนี้จะคำนวณได้อย่างไรถ้าคุณใส่ใจกับความถูกต้องสมบูรณ์ แม้จะมีเล่ห์เหลี่ยมคุณจะคำนวณความครอบคลุมได้อย่างแม่นยำอย่างไรสำหรับการซ้อนทับรูปร่างที่ไม่ใช่รูปหลายเหลี่ยมเช่นเส้นโค้ง? มีบางจุดที่คุณไม่มีทางเลือกนอกจากต้องถอยกลับไปใช้เทคนิคการสุ่มตัวอย่างแบบหลายคลื่นหรือแบบสุ่มหรือไม่?
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.