一个多月以前评论
fran的Python项目详细描述
fran:frame注释
以多页TIFF格式观看视频,并在事件开始或结束的位置标记帧。
为Python3.7编写。
安装
pip install fran
如果您认为可能已经安装了fran
版本,请添加--upgrade
选项。
用法
弗兰
usage: fran [-h] [--write_config WRITE_CONFIG] [--outfile OUTFILE] [--config CONFIG] [--fps FPS] [--cache CACHE] [--threads THREADS] [--keys KEYS] [--flipx] [--flipy] [--rotate ROTATE] [--version] [--verbose] [--logfile LOGFILE] [infile] Log video (multipage TIFF) frames in which an event starts or ends positional arguments: infile Path to multipage TIFF file to read. If no path is given, a file dialog will open. optional arguments: -h, --help show this help message and exit --write_config WRITE_CONFIG, -w WRITE_CONFIG Write back the complete config to a file at this path, then exit --outfile OUTFILE, -o OUTFILE Path to CSV for loading/saving. If no path is selected when you save, a file dialog will open. --config CONFIG, -c CONFIG Path to TOML file for config --fps FPS, -f FPS Maximum frames per second; default 30 --cache CACHE, -n CACHE Number of frames to cache (increase if reading over a network and you have lots of RAM); default 500 --threads THREADS, -t THREADS number of threads to use for reading file (increase if reading over a network); default 3 --keys KEYS, -k KEYS Optional mappings from event name to key, in the format "w=forward,a=left,s=back,d=right". These are additive with those defined in the config --flipx, -x Flip image in x --flipy, -y Flip image in y --rotate ROTATE, -r ROTATE Rotate image (degrees counterclockwise; applied after flipping) --version Print the version and then exit --verbose, -v Increase verbosity of logging (can be repeated). One for DEBUG, two for FRAME. --logfile LOGFILE, -l LOGFILE File to save log to Playback ======== LEFT and RIGHT arrows play the video in that direction at the configured FPS. Hold SHIFT + direction to play at 10x speed. Press COMMA or PERIOD to step one frame left or right, respectively. Contrast ======== Contrast is controlled by rescaling the pixel intensities between a min and max threshold. Hold UP/DOWN to change the lower threshold (increasing it blacks out dim pixels). Hold SHIFT + UP/DOWN to change the upper threshold (decreasing it whites out bright pixels). Events ====== LETTER keys mark the start of an event associated with that letter. SHIFT + LETTER marks the end of the event. Events can overlap, but events of the same type cannot contain each other or start on the same frame. Status ====== SPACE shows in-progress events. RETURN shows the current result table in the console. BACKSPACE shows the current frame number and contrast thresholds in the interval [0, 1]. Prompts ======= DELETE shows a prompt asking which in-progress event to delete, then a confirmation. SHIFT + delete shows a prompt asking which keypress on this frame to delete. CTRL + n shows a prompt asking which in-progress event whose note to edit (if there is more than one), then the new value. Prompts may appear in unexpected places on your screen. Debug ===== CTRL + d to dump the event log for debugging Other ===== CTRL + s to save CTRL + z to undo CTRL + r to redo CTRL + h to show this message
示例
# run with default settings: a file dialog will ask where your TIFF file is and where to save the CSV fran # run with 5 image-reading threads (more than the default 3)# and a 1000-frame cache (more than the default 500) fran --threads 5 --cache 1000# copy the default config to a file, which you can edit fran --write_config my_config.toml # run with a given config file fran --config my_config.toml # give the input and output files to avoid file dialogs fran my_image_file.tif --outfile my_results.csv # flip the image in x and then rotate counterclockwise by 45 degrees fran my_image_file.tif --flipx --rotate 45
要将事件名称(以及它们的关联键映射)添加到配置中,[keys]
部分应该类似于
[keys]w="forward"a="left"s="back"d="right"
有关默认值,请参见the default config file。
输出
如果给定--outfile
,则以csv格式保存对文件的写入。
否则,它会写入stdout(所有其他消息都在stderr上)。
如果给定的输出文件已经存在,将从中加载事件。 如果在gui中选择了输出文件,这是不可能的。
例如
start,stop,key,event,note 120,500,f,forward,"this event is a nice event" 505,530,b,backward, 650,None,r,right,"this doesn't finish in the video"
示例工作流
- 安装fran(
pip install fran
) - 将基本配置文件写入工作目录(
fran --write_config my_project/project_config.toml
) - 根据需要编辑配置文件,包括图像转换、事件名称等
- 开始注释!
fran my_project/my_video.tiff --config my_project/project_config.toml --outfile my_project/results.csv
fran重命名
pip install fran
)fran --write_config my_project/project_config.toml
)fran my_project/my_video.tiff --config my_project/project_config.toml --outfile my_project/results.csv
一个实用工具,用于重命名现有结果文件中的事件。
usage: fran-rename [-h] [--config CONFIG] [--keys KEYS] [--version] [--print] results Rename all of the events in a given results file, with a key mapping specified in a config TOML and/or command line argument. positional arguments: results Path to CSV to update. optional arguments: -h, --help show this help message and exit --config CONFIG, -c CONFIG Path to TOML file for config --keys KEYS, -k KEYS Optional mappings from event name to key, in the format "w=forward,a=left,s=back,d=right". These are additive with those defined in the config --version Print the version and then exit --print, -p Print results to stdout, instead of saving file back
注意
MacOS disagrees with pygame 如果安装在虚拟环境中: 使用系统python(如果3.7+可用)或与自制程序一起安装。 (如果3.7+可用)或安装有自制程序的。
贡献
# Install development dependencies pip install -r requirements.txt # Install package in editable mode pip install -e . # Install pre-commit hooks for lint/formatting pre-commit install