(中文/EN)
Darknetlib 是 darknet 的 C API 库,主要为 LC-Finder 提供目标检测功能,相关代码可参考它的 src/lib/detector.c 文件。
- 支持简单的异常处理
- 重新定义了接口,接口命名风格参考自 LeveDB/c.h
- 适合作为动态库来使用
使用 lcpkg 安装:
lcpkg install github.com/lc-soft/darknetlib
这种方式安装的是纯 CPU 运算的版本,如果你需要带 GPU 加速的版本,请前往发行版页面手动下载。
如果你想手动从源码构建的话:
- 下载安装 CUDA
- 下载 cuDNN 并解压到
3rdparty
目录 - 使用 Visual Studio 打开
build/darknet.sln
- 设置配置为 Release 和 x64
- 构建 darknet_gpu 和 test 项目
- 下载 yolov3-tiny.weights 文件至
test
目录 - 在 Visual Studio 中按 F5 键运行测试程序
git clone https://github.com/lc-soft/darknetlib.git
git submodule init
git submodule update
make
cd test
make
- 让
darknet_detector_train()
能够正常训练识别器。 - 规范化输出的日志格式。
- 移除命令行交互代码,例如:
getchar()
。 - 移除奇怪的
system()
调用,例如:system("echo ...")
。 - 重构 darknet,让它更适合作为函数库使用,而不是命令行程序。(极低优先级)
代码基于 MIT 许可协议 发布。