python正则表达式的括号
今天用到python的正则表达式时,遇到括号()的用法问题,折腾了一晚上,这里记录一下。
python的正则表达式中,括号()的用法是比较特殊的,分为捕获(capturing)和非捕获(non-capturing)两个版本,官方文档是这么说的:
(…)
Matches whatever regular expression is inside the parentheses, and indicates the start and end of a group; the contents of a group can be retrieved after a match has been performed, and can be matched later in the st...
ftrace简介
测试环境:VMware 15.5.6 + Debian 10
ftrace是用来跟踪Linux kernel函数调用情况的一个工具,想要使用它,首先要开启该功能:
sysctl kernel.ftrace_enabled=1
随后进入/sys/kernel/debug/tracing,使用ftrace需要用到的工具都在该目录下:
root@drdestiny:~# cd /sys/kernel/debug/tracing
root@drdestiny:/sys/kernel/debug/tracing# ls
available_events per_cpu stack_trace
available_filter_functi...
Linux开启ssh root登陆&无密码登陆权限[转]
参考https://www.cnblogs.com/toughlife/p/5633510.html
开启ssh root登陆权限
修改sshd_config:
vim /etc/ssh/sshd_config
将PermitRootLogin参数改为yes
之后重启服务:
service sshd restart
允许无密码登陆
文件同上,将PermitEmptyPasswords参数改为yes,之后重启服务
串口登录Linux (Debian 10)
太长不看
用minicom -s进入configuration页面,选择Serial port setup,将Serial Device改为你选定的串口设备,我这里选择/dev/ttyS1
修改/etc/default/grub,在文件末尾加上这几行:
# 9600为波特率,n8表示数据位为8bit
GRUB_CMDLINE_LINUX="console=tty0 console=ttyS1,9600n8"
GRUB_TERMINAL=serial
# parity:是否奇偶校验;stop:停止位位数
GRUB_SERIAL_COMMAND="serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1"
...
UART截取字符到字符设备
要求:
msm_geni_serial_init() (drivers/tty/serial/msm_geni_serial.c)
-> platform_driver_register(&msm_geni_serial_platform_driver) (include/linux/platform_device.h)
static struct platform_driver msm_geni_serial_platform_driver = {
.remove = msm_geni_serial_remove,
.probe = msm_geni_serial_probe, /* probe函数,在这里进行uart_add_one_port */
...
Linux Kernel添加syscall
部门的培训课程有一个实验,要求是这样的:在内核中增加一个系统调用,获取系统启动以来,经过了多少 tick(jiffies),根据内核配置换算成毫秒。
环境为ARM64 + Linux 5.14-rc4(如果之前是按照教程用git clone下载了最新版本的内核代码,那么版本就是一样的,无须担心;你也可以查看内核代码顶层目录下的Makefile的前几行判断内核版本)。不同的架构以及内核版本,过程不一定完全相同,请注意。
本文分成三个部分,分别对应该实验的三个步骤:添加系统调用、编译与文件传输、patch提交。
添加系统调用
首先要明确,添加一个系统调用可以分为三个部分:添加系统调用号、添加函数声明、函数实现。
添加系统调用号
内核代码中有关于添加系统调用的文档(./Docum...
python显示该文件所在目录
有时在代码中会有一些保存文件到当前目录的操作,而这个“当前目录”是会随着运行方式不同而改变的,看以下例子:
import os
# 在目录C:\Users\HP\Desktop新建Untitled-1.py
# 在当前目录下打开test.txt,没有就新建一个,写入字符串,并保存
with open('test.txt', 'w+', encoding='utf-8') as f:
f.write('This is a test line.')
我们在IDE中运行这段代码,结果在C:\Users\HP\Desktop发现了test.txt,确实是在和代码相同目录下。
接下来在命令行中运行该文件,首先是不cd到其他路径,直接运行:
python C:\Users\HP\Des...
VOT(Visual Object Tracking)评价指标综述
2018.09.30更新:
在VOT2015部分补充R score的定义
上一篇博文简单介绍了vot-toolkit的使用方法。当然,那只是操作层面的东西,更重要的是我们通过这个工具得到的各种图表以及图表中的数据。而想要完整地评价一个tracker的性能,其指标必然不会过于简单,所以就有了这篇文章。我想通过梳理VOT2013到VOT2016评价指标的变化,呈现一个更加清晰的思路,让各位对VOT的认识更加深刻。
这篇文章先对VOT进行总体概述,再按照时间顺序分别叙述,循序渐进。
首先简单介绍VOT是什么:
VOT (Visual Object Tracking) 是一个针对单目标跟踪的测试平台,从2013年发展到现在,已经成为单目标跟踪领域主流的三大平台之一(另外两个是OTB...
共计 9 篇文章,2 页。