《Image Provenance Analysis at Scale》论文跑通源码

2023-12-10 02:08

本文主要是介绍《Image Provenance Analysis at Scale》论文跑通源码,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.起因

做毕设正好要做图片溯源(provenance)这方面的内容,因此下载了代码,跑通的过程缺异常痛苦,装包,装虚拟环境,部署代码到服务器等等等等(这些都写过博客),而且跑通代码需要GPU,服务器的GPU被占用就跑不了。而且中间索引步骤每次都要跑30-50分钟,bug多了总是容易放弃,拖拖拉拉花了快一个月才跑完,别的不说,至少看源码能力有了很大的进步。

这里贴上源码的GitHub链接:https://github.com/CVRL/Scalable_Provenance/tree/a5db4f3f51c9cd066e4603959346cae0d86cde18

2.准备工作

首先是最重要的运行程序,runPython3.sh,这是个shell文件,可以在Linux端用cat查看,下面给出具体内容:

#clean
#rm features/*
#rm index/*
#rm filtering_results/*
#rm filtering_results/json/*#export PYTHONPATH=../notredame/:../featureExtraction/:../indexConstruction/:../provenanceFiltering:../provenanceGraphConstruction:../helperLibraries/:/root/faiss/:/home/jbrogan4/Documents/Projects/Medifor/faiss/#worldIndexFile=/media/jbrogan4/scratch0/medifor/datasets/Nimble/NC2017_Dev1_Beta4/indexes/NC2017_Dev1-provenance-world.csv
#probeIndexFile=/media/jbrogan4/scratch0/medifor/datasets/Nimble/NC2017_Dev1_Beta4/indexes/NC2017_Dev1-provenance-index.csv
#nistDataDir=/media/jbrogan4/scratch0/medifor/datasets/Nimble/NC2017_Dev1_Beta4/
#recall=100#worldIndexFile=data/testset/indexes/test-provenance-world.csv
#probeIndexFile=data/testset/indexes/test-provenance-index.csv
#nistDataDir=data/testsetpython3.7 featureExtractionDriver.py --NISTWorldIndex '/raid/workspace/git_repository/Scalable_Provenance/image_filtering/provenance/tutorial/data/testset/indexes/test-provenance-world.csv' --NISTDataset '/raid/workspace/git_repository/Scalable_Provenance/image_filtering/provenance/tutorial/data/testset' --outputdir features/#mkdir tmp
ls -d features/* > /raid/workspace/git_repository/Scalable_Provenance/image_filtering/provenance/tutorial/tmp/feature_filelist#mkdir indexTraining

这篇关于《Image Provenance Analysis at Scale》论文跑通源码的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/475738

相关文章

Spring 中 BeanFactoryPostProcessor 的作用和示例源码分析

《Spring中BeanFactoryPostProcessor的作用和示例源码分析》Spring的BeanFactoryPostProcessor是容器初始化的扩展接口,允许在Bean实例化前... 目录一、概览1. 核心定位2. 核心功能详解3. 关键特性二、Spring 内置的 BeanFactory

Go中sync.Once源码的深度讲解

《Go中sync.Once源码的深度讲解》sync.Once是Go语言标准库中的一个同步原语,用于确保某个操作只执行一次,本文将从源码出发为大家详细介绍一下sync.Once的具体使用,x希望对大家有... 目录概念简单示例源码解读总结概念sync.Once是Go语言标准库中的一个同步原语,用于确保某个操

Java汇编源码如何查看环境搭建

《Java汇编源码如何查看环境搭建》:本文主要介绍如何在IntelliJIDEA开发环境中搭建字节码和汇编环境,以便更好地进行代码调优和JVM学习,首先,介绍了如何配置IntelliJIDEA以方... 目录一、简介二、在IDEA开发环境中搭建汇编环境2.1 在IDEA中搭建字节码查看环境2.1.1 搭建步

JAVA智听未来一站式有声阅读平台听书系统小程序源码

智听未来,一站式有声阅读平台听书系统 🌟 开篇:遇见未来,从“智听”开始 在这个快节奏的时代,你是否渴望在忙碌的间隙,找到一片属于自己的宁静角落?是否梦想着能随时随地,沉浸在知识的海洋,或是故事的奇幻世界里?今天,就让我带你一起探索“智听未来”——这一站式有声阅读平台听书系统,它正悄悄改变着我们的阅读方式,让未来触手可及! 📚 第一站:海量资源,应有尽有 走进“智听

AI hospital 论文Idea

一、Benchmarking Large Language Models on Communicative Medical Coaching: A Dataset and a Novel System论文地址含代码 大多数现有模型和工具主要迎合以患者为中心的服务。这项工作深入探讨了LLMs在提高医疗专业人员的沟通能力。目标是构建一个模拟实践环境,人类医生(即医学学习者)可以在其中与患者代理进行医学

Java ArrayList扩容机制 (源码解读)

结论:初始长度为10,若所需长度小于1.5倍原长度,则按照1.5倍扩容。若不够用则按照所需长度扩容。 一. 明确类内部重要变量含义         1:数组默认长度         2:这是一个共享的空数组实例,用于明确创建长度为0时的ArrayList ,比如通过 new ArrayList<>(0),ArrayList 内部的数组 elementData 会指向这个 EMPTY_EL

如何在Visual Studio中调试.NET源码

今天偶然在看别人代码时,发现在他的代码里使用了Any判断List<T>是否为空。 我一般的做法是先判断是否为null,再判断Count。 看了一下Count的源码如下: 1 [__DynamicallyInvokable]2 public int Count3 {4 [__DynamicallyInvokable]5 get

工厂ERP管理系统实现源码(JAVA)

工厂进销存管理系统是一个集采购管理、仓库管理、生产管理和销售管理于一体的综合解决方案。该系统旨在帮助企业优化流程、提高效率、降低成本,并实时掌握各环节的运营状况。 在采购管理方面,系统能够处理采购订单、供应商管理和采购入库等流程,确保采购过程的透明和高效。仓库管理方面,实现库存的精准管理,包括入库、出库、盘点等操作,确保库存数据的准确性和实时性。 生产管理模块则涵盖了生产计划制定、物料需求计划、

论文翻译:arxiv-2024 Benchmark Data Contamination of Large Language Models: A Survey

Benchmark Data Contamination of Large Language Models: A Survey https://arxiv.org/abs/2406.04244 大规模语言模型的基准数据污染:一项综述 文章目录 大规模语言模型的基准数据污染:一项综述摘要1 引言 摘要 大规模语言模型(LLMs),如GPT-4、Claude-3和Gemini的快

论文阅读笔记: Segment Anything

文章目录 Segment Anything摘要引言任务模型数据引擎数据集负责任的人工智能 Segment Anything Model图像编码器提示编码器mask解码器解决歧义损失和训练 Segment Anything 论文地址: https://arxiv.org/abs/2304.02643 代码地址:https://github.com/facebookresear