- 博客(172)
- 收藏
- 关注
原创 遵循规则:利用大语言模型进行视频异常检测的推理
这篇论文提出了AnomalyRuler,一个基于推理框架的视频异常检测(VAD)方法,旨在提升检测结果的可解释性和公众信任。AnomalyRuler通过两个阶段进行推理:归纳阶段,通过少量正常样本生成检测规则,推导出正常行为与异常行为的区分;演绎阶段,使用这些规则对测试视频进行异常检测,并结合平滑和投票机制优化检测结果。该方法不需要大量异常样本,能够快速适应不同的VAD场景,并在多个标准数据集上表现出优越的性能和推理能力,超越了传统的VAD方法。
2025-02-14 20:09:46
876
原创 VERA: 基于视觉-语言模型的解释性视频异常检测框架
VERA 是一种无需修改模型参数的可解释视频异常检测 (VAD) 方法。通过语言化学习,VERA 在训练阶段优化指导性问题,以增强冻结的视觉-语言模型 (VLM) 的推理能力。在推理阶段,VERA 结合场景和时间上下文,通过粗到细的方法优化异常评分,实现帧级检测。实验表明,VERA 在 UCF-Crime 和 XD-Violence 数据集上取得了先进性能,并且相比现有方法,无需指令微调或额外推理模块,大幅降低计算和标注成本。
2025-02-07 17:06:20
866
原创 MCANet: 基于多模态字幕感知的大语言模型训练无关视频异常检测
就是仿照CVPR'24那篇LAVAD来做的,几乎一摸一样,就引入了一个音频字幕
2025-01-10 21:42:07
1127
原创 CUVA:对视频异常因果理解的综合基准(A Comprehensive Benchmark for Causation Understanding of Video Anomaly)
这篇论文主要是发布了一个关于因果理解的数据集,考虑的很全面,包括是什么、为什么、多么重要。
2024-09-26 12:59:21
1162
4
原创 大模型是如何训练出来的?
①预训练,此时只是单纯的利用网络上爬取的资料学习词语接龙,可以作为后面阶段的不错的初始参数;②微调,此时使用预训练好的模型参数作为初始参数,并且冻结这些参数,添加一些新的参数并且只训练这些新参数,而且要使用QA的形式,即指令形式,这样微调出来的模型才可以很好的回答人类所提出的问题;③强化学习,通过反馈来改进自己的答案,好的答案概率提高,不好的答案概率降低。
2024-08-23 19:54:40
973
原创 VadCLIP:将视觉语言模型应用于弱监督视频异常检测(VadCLIP: Adapting Vision-Language Models for WSVAD)
作者主要是提出了WSVAD的`新范式VadCLIP`,是`双分支`结构,第一个分支利用视觉信息实现二分类,为粗粒度;第二个分支利用 视觉语言对齐方法 实现多分类,为细粒度。VadCLIP主要包括`3个组件`,分别为:①LGT-Adapter捕获时间依赖;②Two prompt mechanisms有效地将CLIP用到WSVAD任务;③MIL-Align实现了弱监督下对齐范式的优化,尽量保留了预训练的知识。
2024-08-16 17:03:30
1136
原创 VAD-LLaMA:基于大语言模型的视频异常检测和解释(Video Anomaly Detection and Explanation via Large Language Models)
作者主要是提出了一个新颖的VAD方法,即VAD-LLaMA,将VLLMs加进了VAD框架,使得模型不仅可以检测异常,还可以解释异常,当然了,检测异常的时候还不用手动选择阈值。创新点主要是:①在MIL基线即VADor上引入了一个LTC来建模长期上下文(还有一个扩展,引入短期历史信息);②提出了三阶段训练方法,使得在训练VLLMs到VAD领域时效率更高,即减少数据需求和降低标注成本。
2024-08-13 17:50:53
1681
3
原创 OVVAD:开放词汇视频异常检测(Open-Vocabulary Video Anomaly Detection)
这篇研究的是弱监督下的开放词汇视频异常检测任务,方法划分为2个任务,一个是只管检测异常,一个只管给异常分类。他认为重要的有:①是几乎没权重的TA模块;②可以给视觉信号注入语义知识的SKI模块;③可以生成伪异常样本的NAS模块。
2024-08-07 15:21:38
659
原创 HAWK:学习理解开放世界视频异常(HAWK: Learning to Understand Open-World Video Anomalies)
主要是对现有的数据集进行了改造(生成语言描述+QA对),然后是提出了结合运动模态的新方法HAWK,它生成的语言描述更关注于对异常的理解,并且更倾向于泛化到开放世界场景。
2024-07-30 22:46:31
429
原创 Holmes-VAD:基于多模态大语言模型的无偏且可解释的视频异常检测( Towards Unbiased and Explainable Video Anomaly Detection)
首先提出了Holmes-VAD方法来解决了目前VAD方法中存在偏差和缺乏解释性的问题,然后构建了VAD-Instruct50k数据集来验证了Holmes-VAD方法的有效性,在构建数据集时引入了高效的标注范式(单帧注释、事件片段生成、时间片段描述)
2024-07-27 21:49:59
1748
原创 VANE-Bench:用于对话式大语言模型的视频异常检测评估基准(Video Anomaly Evaluation Benchmark for Conversational LMMs)
本文主要提出了VANE-Bench数据集,它旨在评估Video-LMMs在VAD任务中的表现
2024-07-25 00:33:18
1115
原创 Windows系统连接Linux服务器时配置免密登录
想要VSCode连接服务器时不需要每次打开都得重复输入密码的话,就先把Windows系统连接服务器时的免密登录配置好,VSCode也就不需要了
2024-07-24 15:13:01
1519
原创 基于弱监督学习的视频异常检测与鲁棒时序特征幅度学习(Robust Temporal Feature Magnitude Learning)
提出了RTMF方法,显著提高了对微小异常的辨别能力和样本的使用效率。
2024-07-23 21:08:49
1171
1
原创 不仅看,还要听:弱监督下的多模态暴力检测学习(Learning Multimodal Violence Detection under Weak Supervision)
本文主要研究弱监督下的基于视听两种模态下的大规模暴力检测,大规模是指提出了大规模暴力数据集XD-Violence,并且本文提出的方法可以用在离线检测和实时检测两种方面。
2024-07-15 10:30:47
1483
原创 在监控视频中的现实世界异常检测(Real-world Anomaly Detection in Surveillance Videos)
使用弱标记的正常和异常视频数据来训练一个深度MIL框架,是一个视频异常检测的通用模型,并且在新提出的数据集上验证其有效性。并展示了提出的数据集在异常识别任务种的实用性(benchmark)
2024-07-12 14:46:59
861
原创 利用大型语言模型进行视频异常检测(Harnessing Large Language Models for Training-free Video Anomaly Detection)
提出LAVAD方法,利用预训练好的LLMs和VLMs来完成视频异常检测,不需要数据收集和模型训练。
2024-07-05 20:49:36
1658
6
原创 算法-选择排序
如下数组 A 中,变量 i (从 1 ~ n-1),初始令变量 min = i,,变量 j 从 i+1 ~ n 依次遍历元素,若 A[min] > A[j],则更新 min = j,当变量 j 遍历到 n 后,判断 i 是否还与 min 相等,若相等则说明当前最小值就是 i 所指向的元素,若不相等,则需要交换 i 与 min 所指向的元素,这样就确定了一个最小值元素,进行下一次上述流程,总过需要 n-1 趟便可以将数组 A 排序为从小到大。每一趟在待排序元素中选取关键字最小的元素加入有序子序列。
2024-03-07 10:50:39
400
原创 C语言-一维数组的定义
数组通过变量名后加方括号表示,方括号里面是数组可以容纳的成员数量(即长度)。//数组 arr ,里面包含 10 个成员,每个成员都是 int 类型// 或者10声明数组时,必须给出数组的大小。数组可以在声明时,使用大括号,同时对每一个成员赋值。变形形式 1:C 语言允许省略方括号里面的数组成员数量,这时根据大括号里面的值的数量,自动确定数组的长度。// 自动确定数量为 5 ,与上面的定义方式完全相同变形形式2:对数组部分元素赋初值:如果大括号里面的值,少于数组的成员数量,那么。
2024-03-03 16:52:12
1868
原创 C语言-对数组的理解
数组提供了一种连续的内存空间来存储相同类型的数据,这样可以提高内存的使用效率,并且方便进行数据的访问和修改。模拟现实世界:在很多实际情况中,一组相关的数据可以看作是一个整体,例如一周的每天温度、一个月的销售额等。:数组是一种高效的数据结构,可以快速地访问、修改和遍历其中的数据。:通过数组,可以将复杂的数据结构和运算简化为简单的数组操作和访问,从而简化代码,提高代码的可读性和可维护性。故数组元素在内存中依次紧密有序排列,占据的空间的大小,取决于数组的长度和数组中元素的类型。中引用的是这块连续空间的。
2024-03-03 16:22:32
588
原创 C语言-break、continue和goto关键字
如果我们没有找到这样的因子,那么 n 就是素数,因为任何大于 sqrt(n) 的数都不可能是 n 的因子(否则,就会有一个小于 sqrt(n) 的对应因子)。如下面这段示例代码中,当 i=1 时就满足了 if 判断条件,则会执行 break 语句,这时 for 循环就结束了,相当于说 break 下面的语句一次也不会执行到!在嵌套循环中,break 结束的是包裹 break 关键字的最近的一层循环!因此,我们只需要检查到 sqrt(n) 就足够了,这可以大大减少我们需要检查的数的数量,从而提高算法的效率。
2024-02-29 15:34:52
1058
原创 C语言-“无限”循环和嵌套循环
所谓的嵌套循环,就是在一个循环中又写了一个循环,这个称之为两层循环。当然了,第二层循环中还可以再写一个循环,这样就变成了三层循环。不过,实际开发中,我们最多见到的嵌套循环是两层。一般不会出现超过三层的嵌套循环。如果将要出现,一定要停下来重新梳理业务逻辑,重新思考算法的实现,控制在三层以内。否则,可读性会很差。实质上,嵌套循环就是把内层循环当成外层循环的循环体。只有当内层循环的循环条件为false(值为0)时,才会完全跳出内层循环,才可结束外层的当次循环,开始下一次的外层循环。设外层循环次数为m。
2024-02-29 14:58:00
1130
原创 C语言-循环结构
循环语句具有在某些条件满足的情况下,反复执行特定代码的功能。都具备四个要素for 和 while 循环可能一次也不执行,单 do-while 循环至少会执行一次如何选择?如果有明显的循环次数(范围)使用 for 循环,若没有则 while 循环,如果要求至少执行一次则使用 do-while 循环。
2024-02-29 11:26:47
1629
原创 C语言-分支结构
让我们来分析一下第二种的错误写法,因为成绩但凡大于等于 80 的则一定也会大于等于 60,所以只要成绩大于等于 60 则就没有机会进行是否大于等于 80 的判断了,故这是错误的写法。如果表达式的值等于某个 case 中的常量值,则执行对应 case 中的执行语句。例如:当 type=1 时输出香蕉,当 type=2 时输出苹果,当 type=3 时输出梨子,则下列两种写法的顺序都是可以的。例如:成绩在 [0, 59] 之间为不合格,成绩在 [60, 79] 时为合格,成绩在 [80, 100] 时为优秀。
2024-02-06 10:54:56
853
原创 MQ-消息转换器
定义一个消费者,监听 object.queue 队列并消费消息,消息类型和我们发送消息使用的类型一样,都是 Map 类型import org/*** @author 温柔哥// 测试转换器 @RabbitListener(queues = "object.queue") public void listenObjectQueue1(Map < String , Object > message) {
2024-02-02 18:26:40
1010
原创 MQ-使用SpringAMQP实现发布订阅模型之Topic Exchange
Topic 交换机接收的消息 RoutingKey 必须是多个单词,以**.**分割Topic 交换机与队列绑定时的 bindingKey 可以指定通配符。
2024-02-02 17:04:54
1504
原创 MQ-使用SpringAMQP实现发布订阅模型之Direct Exchange
Fanout交换机将消息路由给每一个与之绑定的队列Direct交换机根据RoutingKey判断路由给哪个队列如果多个队列具有相同的RoutingKey,则与Fanout功能类似。
2024-02-02 12:31:31
1144
原创 MQ-使用SpringAMQP实现发布订阅模型之Fanout Exchange
接收publisher发送的消息将消息按照规则路由到与之绑定的队列不能缓存消息,路由失败,消息丢失FanoutExchange的会将消息路由到每个绑定的队列。
2024-02-02 11:25:59
879
原创 MQ-发布订阅模型
一方面,接收生产者发送的消息。另一方面,知道如何处理消息,例如递交给某个特别队列、递交给所有队列、或是将消息丢弃。到底如何操作,取决于Exchange的类型。,路由失败则消息丢失(如果没有任何队列与Exchange绑定,或者没有符合路由规则的队列,那么消息会丢失!:生产者,也就是要发送消息的程序,但是不再发送到队列中,而是发给交换机。:消息队列也与以前一样,接收消息、缓存消息。1. Fanout:广播,将消息交给所有。2. Direct:路由,把消息交给符合。:消费者,与以前一样,订阅队列,没有变化。
2024-02-02 10:07:30
263
原创 MQ-使用SpringAMQP实现工作队列模型
在 consumer 服务中定义两个消息监听者,都监听 simple.queue 队列,其中消费者1每秒可以处理 10 条消息,消费者2每秒可以处理 1 条消息import org/*** @author 温柔哥// 模拟工作队列模型 @RabbitListener(queues = "simple.queue") public void listenWorkQueue1(String message) throws InterruptedException {
2024-02-01 16:58:53
502
原创 MQ-使用SpringAMQP实现HelloWorld中的简单队列模型
SpringAmqp的官方地址Spring AMQP 的特性:1.Listener container for asynchronous processing of inbound messages(用于异步处理入站消息的侦听器容器)2.for sending and receiving messages(RabbitTemplate用于发送和接收消息)3.
2024-02-01 16:12:20
1378
原创 MQ-常见消息模型及基本消息队列(basicQueue)
建立connection创建channel利用channel声明队列利用channel向队列发送消息建立connection创建channel利用channel声明队列定义consumer的消费行为handleDelivery()利用channel将消费者与队列绑定。
2024-02-01 10:53:17
968
原创 MQ-RabbitMQ介绍和安装
建立连接以后,一定要建立一个 channel(通道),然后发送者或者消费者才能基于通道完成消息的发送或者接受。可以认为 channel 是 mq 中无论是消息发送还是消息接收的一个。Connection(连接),将来无论是消息的发送者还是消费者都应该和 mq 建立连接。exchange(交换机)就是路由器,负责将消息路由给多个队列。,将来每一个连接上的人都应该创建一个或多个通道。queue(队列)就是来做消息存储的。上传虚拟机后,使用命令加载镜像。使用 docker 来部署。查看容器,运行成功!
2024-01-31 11:17:09
774
原创 MQ-同步通讯和异步通讯以及MQ常见框架
MQ (MessageQueue),中文是消息队列,字面来看就是存放消息的队列。也就是事件驱动架构中的Broker。它是一种应用程序对应用程序的通信方式,其中一端应用程序发布消息到队列中,另一端应用程序从队列中读取消息。这种通信方式的特点是发送和接收应用程序不需要直接相互联系,而是通过队列作为中介进行通信。RabbitMQActiveMQRocketMQKafka公司/社区RabbitApache阿里Apache开发语言ErlangJavaJavaScala&Java。
2024-01-30 12:01:28
1529
原创 Docker-搭建私有镜像仓库
Docker官方的Docker Registry因为带有图形化界面版本的镜像仓库不是官方提供的,而是由第三方个人基于 Docker 官方的 Docker Registry 进行开发的,所以部署时需要两个静像,我们使用 compose 文件进行部署。因为企业中的镜像那不都是商业机密么,肯定不希望开源,不然还怎么赚钱,所以企业自己的镜像最好是采用私有Docker Registry来实现。(就是将本地镜像重命名一下,他们的镜像 ID 都是一样的,本质上还是同一个镜像)可以查看当前私有镜像服务中包含的镜像。
2024-01-29 11:49:02
7808
3
遵循规则:利用大语言模型进行视频异常检测的推理
2025-02-14
VERA: 基于视觉-语言模型的解释性视频异常检测框架
2025-02-07
VadCLIP:将视觉语言模型应用于弱监督视频异常检测
2024-08-16
VAD-LLaMA 基于大语言模型的视频异常检测和解释
2024-08-13
开放词汇视频异常检测(Open-Vocabulary Video Anomaly Detection)
2024-08-07
HAWK:学习理解开放世界视频异常
2024-07-30
Holmes-VAD - 基于多模态大语言模型的无偏且可解释的视频异常检测
2024-07-27
Docker-利用DockerCompose部署cloud-demo微服务集群
2024-01-29
猴子爬山,用了奇/偶数步,有多少种方案
2022-09-14
TA创建的收藏夹 TA关注的收藏夹
TA关注的人