DCV revived

Ferhat Kurtulmuş aferust at gmail.com
Mon Dec 13 12:48:15 UTC 2021


After some effort, I could make DCV compilable with the recent 
versions of LDC, mir libraries, ffmpeg, bindbc.opengl, and 
bindbc.glfw. It still has some problems:

* stereo vision module needs a revision I could not figure out so 
far.

* ggplot backend must be re-implemented or something better can 
be used. This one is just for visualization though. It would be 
awesome to be able to use Adam's simplewindow instead of glfw, 
but it requires so much work.

* Reading from video files causes distorted images for some video 
types. Some test video files work very well. There must be a 
stride problem or unimplemented pixel format in 
https://github.com/aferust/dcvrev/blob/main/video/dcv/io/video/common.d#L225 (adoptFormat). Reading from camera devices seems fine so far.

I also contributed to it with a new module "measure" covering 
some common binary region algorithms such as label, contour, 
ellipse fitting, convex hull, and raw moments. Some of them are 
translated from the scikit-image Python library mostly written in 
cython.

I used ref-counted Slice!(RCI:T, N, kind) in the 
newly-implemented functions instead of GC-allocated slices. I 
don't know if it is a good idea though. These two types must work 
together somehow. For now, they are doing well IMHO.

I am not familiar with the implementations of every single 
algorithm previously-implemented in DCV. So, I am not sure about 
undertaking the whole thing. I think I will keep it as a separate 
repo on me for a while, and let's see what will happen.

What does work: every example in the example folder except the 
unrevised folder that includes examples requiring ggplot and 
multiview (stereovision) module.

Please contribute. I can even transfer the entire repo on 
request. What I want is to keep it alive.

https://github.com/aferust/dcvrev


More information about the Digitalmars-d-announce mailing list