Ubuntu KCF 代码运行

2023-05-16

最近刚接触kcf,在Ubuntu上运行代码,碰到一些问题,借鉴了网上其他人的方法,简单记录一下过程。

KCF代码下载

KCF的代码可以去作者的网站去下载:
http://www.robots.ox.ac.uk/~joao/circulant/index.html
如下图:
在这里插入图片描述
这里我下了Muti-scale C++和Streamlined C++,解压缩以后分别得到文件KCFcpp-master和kcf-master。可能会需要用到Trax,下面记录了Trax的编译过程。

Trax编译

Trax可以在如下链接中下载:Trax库
我在安装Trax的时候发现有两个版本,分别是1.1.4和2.0.1,这里要用1.1.4版本:
在这里插入图片描述
否则后面编译kcf-master文件里的main_trax.cpp时会报如下错误:
no matching function for call to ‘trax::Server::wait(trax::Image&, trax::Region&, trax::Properties&)’ int tr = handle.wait(img, reg, prop);
这是因为main_trax.cpp调用的Server::wait()函数与2.0.1版本的Trax中定义的Server::wait()函数的参数列表不一致,所以要根据实际情况来选择正确版本的Trax。
下载完以后,解压缩,进入Trax文件目录,输入如下命令进行编译(更详细的内容可以参考Trax编译文档):

$ mkdir build
$ cd build
$ cmake ..
$ make
$ sudo make install

这样就完成了Trax的编译,默认情况下,仅构建C库,如果要启用其他模块,则必须在$ cmake … 这一步通过添加标志来告知CMake:

$ cmake -DBUILD_OPENCV=ON -DBUILD_CLIENT=ON ..

在编译的时候还曾遇到如下问题:
Found OpenCV Windows Pack but it has not binaries compatible with your configuration.
You should manually point CMake variable OpenCV_DIR to your build of OpenCV library.
Found package configuration file: … but it set OpenCV_FOUND to FALSE so package “OpenCV” is considered to be NOT FOUND.

解决方法是在CMakeLists.txt里的find_package(OpenCV REQUIRED)前面添加如下内容:
set(OpenCV_DIR /home/…/opencv/build) //编译opencv的build目录
set(OpenCV_FOUND 1)

KCF代码编译

以KCFcpp-master为例,进入KCFcpp-master,执行如下命令:

$ mkdir build
$ cd build
$ cmake ..
$ make

得到可执行文件KCF。

准备数据

数据序列可以在如下链接下载:数据序列
以Basketball为例,下载下来的数据有图片img和object位置文件groundtruth_rect.txt,将img文件夹里图片的路径存入到images.txt文件中:

import os

path='.../Basketball/img'   

dirs=os.listdir(path)
dirs.sort()
f=open('images.txt','w')
for dir in dirs:
	img=path+'/'+dir
	f.write(img+'\n')

f.close()

将第一张图片中object的位置写入到region.txt文件中,groundtruth_rect.txt文件里面就是每张图object的位置(左上角坐标、宽、高),这里我们只需要第一张图的object的位置(需要是四个点的坐标),因此要做一下转化,例如groundtruth_rect.txt文件里第一行是:198,214,34,81,那么region.txt里的内容就应该是:198, 214, 198, 295, 232, 214, 232, 295

程序运行

将images.txt和region.txt放入到build文件夹,终端中输入:

$ ./KCF show

即可查看运行结果了。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ubuntu KCF 代码运行 的相关文章

随机推荐

  • I.MX6ULL的SPI通信

    简述 SPI是串行外设接口 xff08 Serial Peripheral Interface xff09 的缩写 xff0c 相比于I2C最高400bps的传输速度 xff0c SPI每秒可以传输的数据可以高达几十M甚至上百Mbit 1
  • 信号量与互斥量的区别

    信号量 xff1a 那是多线程同步用的 xff0c 一个线程完成了某一个动作就通过信号告诉别的线程 xff0c 别的线程再进行某些动作 互斥量 xff1a 这是多线程互斥用的 xff0c 比如说 xff0c 一个线程占用了某一个资源 xff
  • C语言常用转义字符表

    C语言常用转义字符表 转义字符 xff1a 转义字符分为一般转义字符 八进制转义字符 十六进制转义字符 一般转义字符 xff1a 背诵 0 n 八进制转义字符 xff1a 141 是合法的 xff0c 前导的0是不能写的 十六进制转义字符
  • 2018年App测试流程及要点梳理

    先说说 xff0c 为什么要给大家梳理App测试流程和要点呢 xff1f 主要是缘于有太多同学咨询相关App测试的问题 xff0c 回答的次数多了 xff0c 就不想打字了 xff0c 还不如这样全部帮你们整理好 xff0c 希望各位看到的
  • 毕业设计--球上自平衡机器人

    目录 前言 一 机器人原理分析 二 控制器设计 三 程序部分 四 硬件清单 五 电路设计 六 结构设计 七 总结与展望 总结 展望 2021 8 18更新 xff1a 看到评论区很多人对这个机器人比较感兴趣 xff0c 把之前挖好的坑填一下
  • ROS入门之CmakeList.txt详讲

    本文为进来学习的总结 xff0c 记录了学习CmakeList txt文档的各个步骤 xff0c 适合从零开始理解CmakeList txt xff0c 可能存在错误之处 xff0c 望批评指正 0 Cmake的起源 为什么有CmakeLi
  • 2 如何给Gazebo中的仿真机械臂添加一个力传感器?

    1 你得有一个仿真机械臂 简单地说你首先的拥有一个能够在Gazebo当中使用的机械臂的URDF文件 xff0c 必须要包含visual collision和inertial三大标签 出于个人习惯 xff0c 这里直接使用UR官方提供的UR5
  • C#学习之事件的本质

    在注册事件时 xff0c 使用EventHandler委托 xff1b 摘要 表示将用于处理不具有事件数据的事件的方法 参数 sender 事件源 e 不包含事件数据的对象 public delegate void EventHandler
  • ..\OBJ\USART.axf: Error: L6218E: Undefined symbol I2C_CheckEvent (referred from oled_i2c.o).

    OBJ USART axf Error L6218E Undefined symbol I2C CheckEvent referred from oled i2c o OBJ USART axf Error L6218E Undefined
  • React 应用中的异步数据请求----fetch,以及fetch的优缺点

    React 应用中的异步数据请求 fetch 与Vue js一样 xff0c React官方也没有提供服务器端接口异步请求方案 xff1b 可以使用第三方的axios模块 xff0c 或者H5新增的原生技术 xff1a fetch 抓取 有
  • hmdb51数据集,视频+标签

    目录 视频下载链接 标签下载 hmdb介绍 其它 用于行为识别还需 帧标注 xff08 rawframe annotation xff09 视频标注 xff08 video annotation xff09 目录 视频下载链接 标签下载 h
  • vscode 连接服务器(Ubuntu系统),安装anaconda上运行深度学习代码

    目录 VSCODE的官网 Visual Studio Code Code Editing Redefined 1 安装 Romote SSH 2 添加服务器 3 进入服务器 4进入服务器文件 5 在Ubuntu上安装anconda xff0
  • nohub 和 & 在linux上不间断后台运行程序

    1 nohub xff08 没安装的要先安装 xff09 用途 xff1a 不挂断地运行命令 语法 xff1a nohup Command Arg amp 无论是否将 nohup 命令的输出重定向到终端 xff0c 输出都将附加到当前目录的
  • 《30天自制操作系统》:值得推荐的一本好书

    自己编写一个操作系统 xff0c 是许多程序员的梦想 也许有人曾经挑战过 xff0c 但因为太难而放弃了 其实你错了 xff0c 你的失败并不是因为编写操作系统太难 xff0c 而是因为没有人告诉你那其实是一件很简单的事 那么 xff0c
  • NTU RGB+D 120 划分训练集和测试集,生成标签文件。

    NTU RGB 43 D 120 总共有120类和114 480个样本 大小约为262G 包括 RGB视频分辨率为1920x1080 xff0c 深度图和IR xff08 红外 xff09 视频的分辨率均为512x424 xff0c 3D骨
  • 7z.001压缩包解压方法。(Window+Linux)

    之前遇到过的问题 xff1a Open ERROR Can not open the file as 7z archive 解决 xff1a 1 分卷文件需合并成一个7z压缩文件 1 1 如下所示是一个7z 结尾的文件 xff0c 对它的解
  • Linux 服务器上传下载文件到阿里网盘

    1 查看Linux系统架构 dpkg print architecture 2 下载安装 xff08 根据系统版本安装 xff09 2 1下载地址 https github com tickstep aliyunpan releases 2
  • CondaEnvException: Pip failed 或 Could not find a version that satisfies the requirement 问题

    1 错误实例 xff08 Could not find a version that satisfies the requirement imageio 61 61 2 27 0 xff09 2 解决方法 2 1 若对imageio的版本要
  • Linux中系统盘空间不足和显存没有释放问题

    1 系统盘空间不足 以下两个是可以直接删除 xff0c 不影响系统运行的目录 xff0c 所以首先直接删除 du sh root miniconda3 pkgs amp amp rm rf root miniconda3 pkgs cond
  • Ubuntu KCF 代码运行

    最近刚接触kcf xff0c 在Ubuntu上运行代码 xff0c 碰到一些问题 xff0c 借鉴了网上其他人的方法 xff0c 简单记录一下过程 KCF代码下载 KCF的代码可以去作者的网站去下载 xff1a http www robot