Variable edge buf size. int64 coordinates.
The edge buffer size is too small when dealing with large images. So I added the option to make it user defined.
Also when converting large images where the x,y coordinates are larger than the max value of int16, the coordinates become invalid/capped to the max value of int16. It is changed to int64.
@ausrasul Thank you for your quick fix, I was about to do something similar.
About the int16 issue, I didn't dive into the code yet, but why are you using int types instead of uint types? I suppose the index values must be positive. In that case, a uint32 would cover the same positive value range of int64 for two times less memory.
Is the concern about memory consumption a valid one? In the PR #19 tackling the same issue @yxdragon seems to acknowledge that.
I'll be testing your fork and give a feedback.
I've been testing your implementation @ausrasul with my data and encountered an other overflow, of uint16 this time. I opened a PR on your fork.