Có, và tôi mong muốn được xem chi tiết cụ thể của các câu trả lời khác, nhưng một cách để giải quyết vấn đề này là không có tiếng ồn (hoặc nhiều tiếng ồn) trong dữ liệu nguồn để bắt đầu.
Tiếng ồn xuất phát từ thực tế là có độ chênh lệch cao trong kết xuất - số lượng mẫu bạn đã lấy không hội tụ đủ với câu trả lời đúng thực tế của tích phân và vì vậy một số pixel quá cao / sáng và một số pixel là quá cao quá thấp / mờ (trong mỗi kênh màu).
Vấn đề là ở đây: Nếu bạn sử dụng các số ngẫu nhiên nhiễu trắng để lấy mẫu, bạn có thể lấy các mẫu tụ lại với nhau như hình ảnh bên dưới. Cho đủ mẫu, nó sẽ hội tụ, nhưng sẽ mất một lúc trước khi nó có độ bao phủ tốt trên không gian lấy mẫu. Tìm một vùng không gian trống trong hình ảnh bên dưới (như ở phía dưới bên phải) và tưởng tượng rằng có một ánh sáng nhỏ, sáng ở đó và cảnh đó tối ở mọi nơi khác. Bạn có thể thấy làm thế nào không có bất kỳ mẫu nào sẽ gây ra vấn đề cho kết xuất.
Thay phiên, bạn có thể lấy mẫu theo các khoảng thời gian chẵn như bên dưới, nhưng điều đó sẽ cung cấp cho bạn các tạo tác răng cưa thay vì tiếng ồn, điều này tệ hơn.
O(1/N)O(N−−√)
Đây là một "lưới bị xáo trộn" nơi bạn lấy mẫu trên lưới, nhưng sử dụng các độ lệch ngẫu nhiên nhỏ trong một kích thước ô. Điều này đã được phát minh bởi pixar và đã được cấp bằng sáng chế trong một thời gian nhưng không còn:
Dưới đây là một chuỗi chênh lệch thấp phổ biến được gọi là chuỗi Halton (về cơ bản là phiên bản 2d của Van Der Corpus)
Và đây là một mẫu lấy mẫu poisson, sử dụng thuật toán ứng cử viên tốt nhất của Mitchel:
Thông tin chi tiết, bao gồm mã nguồn tạo ra những hình ảnh này có thể được tìm thấy ở đây: https://blog.demofox.org/2017/05/29/when-random-numbers-are-too-random-low-discrepancy- resultences /