sknw icon indicating copy to clipboard operation
sknw copied to clipboard

Variable edge buf size. int64 coordinates.

Open ausrasul opened this issue 3 years ago • 3 comments

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 avatar Mar 22 '22 17:03 ausrasul

@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.

jmon12 avatar Jan 18 '23 17:01 jmon12

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.

jmon12 avatar Jan 19 '23 16:01 jmon12