OCNet_Object Context Network for Scene parsing

本文介绍了OCNet(Object Context Network),它用于场景解析,通过self-attention引入同类对象上下文地图。模型包含对象上下文估计和对象上下文聚合两部分,实验表明,使用辅助损失和多尺度测试提高了性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

0. 写作目的

    好记性不如烂笔头。

1. 主要思想

     使用self-attention引入同类的 object context map。 (感觉这个自监督,没有CVPR2020中 CPNet更直观)

    如下图:

 

2. 模型框架

具体的 OCP 细节:

OCP包括两部分: object context estimation 和 object context aggregation。

其中第一步份主要是计算相似性,与 self-attention中类似。 第二部分是得到经相似性相乘得到的feature。

</

### 关于 DM_BOXED_PRIMITIVE_FOR_PARSING 的定义与用法 DM_BOXED_PRIMITIVE_FOR_PARSING 是一种静态分析工具中的检测规则名称,通常用于 Java 编程环境中。它主要关注的是在解析操作中使用装箱原始类型(Boxed Primitive Types)可能引发的性能或逻辑问题。 #### 定义背景 此规则的核心目的是提醒开发者注意,在某些场景下直接使用装箱类型的解析方法可能会带来不必要的开销或者潜在错误。例如,`Integer.parseInt(String)` 方法返回的是 `int` 类型而非 `Integer` 对象[^3]。如果开发人员期望获得一个对象而不是基本数据类型,则可能导致误解或不一致的行为。 #### 使用案例 以下是几个常见的涉及该规则的应用实例: 1. **不当使用的例子** 假设我们尝试通过字符串转换得到一个 Integer 对象却误用了基础类型的方法: ```java String input = "123"; int value = Integer.parseInt(input); // 这里返回的是 int 而非 Integer System.out.println(value instanceof Integer); // 输出 false ``` 上述代码片段展示了当调用 `parseInt()` 函数时实际获取到的是 primitive type (`int`) 并不符合预期的对象形式(`Integer`)需求[^4]。 2. **推荐做法** 若要确保结果为封装类实例可以改用如下方式实现相同功能但满足特定条件下的要求: ```java String input = "123"; Integer boxedValue = Integer.valueOf(input); System.out.println(boxedValue instanceof Integer); // 正确输出 true ``` 利用 `valueOf()` 可以既保持数值不变又能保证返回值属于相应包装器类别[^5]。 #### 性能考量 值得注意的一点在于频繁创建新的装箱对象相较于单纯处理原生变量会消耗更多内存资源以及计算时间成本。因此除非必要否则应尽量减少无谓地生成额外实体数量[^6]。 ### 结论 综上所述,遵循 DM_BOXED_PRIMITIVE_FOR_PARSING 提醒有助于编写更加高效且易于维护的程序代码结构设计思路。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值