darknet源码: https://codeload.github.com/AlexeyAB/darknet/zip/refs/heads/master
第一步 进入darknet目录下
darknet_text 是我修改后的文件夹名称
我编译的是GPU的版本使用的是darknet.sln 和 darknet.vcxproj这两个文件 CPU请使用
darknet_no_gpu.sln 和 darknet_no_gpu.vcxproj 编译的方法应该差不多
第二步 通过文本方式(其他方式也行)打开 darknet.vcxproj
找到这一处 :
<ImportGroup Label="ExtensionSettings">
<Import Project="$(VCTargetsPath)\BuildCustomizations\CUDA 10.1.props" />
</ImportGroup>
10.1是我当前使用的CUDA版本 将他改为自己的CUDA版本即可 一共有两处
再是找到这一处
<CudaCompile>
<TargetMachinePlatform>64</TargetMachinePlatform>
<CodeGeneration>compute_35,sm_35;</CodeGeneration>
</CudaCompile>
这里得查看自己电脑的一个算力了,可以去官方查看一下自己版本的算力这个跟显卡有很大关系
(本人1050ti 35即可) 这里也是两处
第三步 用VS打开darknet.sln 添加一个opencv的属性表 (添加在release环境下)
opencv属性表里面配置自己opencv相关路径和文件即可
想了一下还是写一下属性的配置过程。。。
首先右击 Release|x64 点击 添加新项目属性表 添加后我以opencv为例子 右击 opencv 点击 属性
点击 VC++目录
再点击 链接器 找到 输入 写入 库目录中的release 版本的.llb文件
第四步 右击darknet 点击重新生成即可完成编译 (在release x64环境下完成 不然会报错)