Add an implementation of the Difference Map algorithm.
Approach
Adapted the current RPIE implementation for DM. The farplane updates are the same, but difference map has different nearplane updates. DM requires that all positions be used for each update, so I had to adapt the batch parameter so that only one update is applied each epoch.
Pre-Merge Checklists
Submitter
[x] Write a helpfully descriptive pull request title.
[x] Organize changes into logically grouped commits with descriptive commit messages.
[x] Document all new functions.
[x] Click 'details' on the readthedocs check to view the updated docs.
[x] Write tests for new functions or explain why they are not needed.
[x] Address any complaints from pep8speaks.
Reviewer
[x] Actually read all of the code.
[ ] Run the new code yourself; the included tests should make this easy.
[ ] Write a summary of the changes as you understand them.
Purpose
Add an implementation of the Difference Map algorithm.
Approach
Adapted the current RPIE implementation for DM. The farplane updates are the same, but difference map has different nearplane updates. DM requires that all positions be used for each update, so I had to adapt the batch parameter so that only one update is applied each epoch.
Pre-Merge Checklists
Submitter
Reviewer