Image Overlap

Two images A and B are given, represented as binary, square matrices of the same size.  (A binary matrix has only 0s and 1s as values.)

We translate one image however we choose (sliding it left, right, up, or down any number of units), and place it on top of the other image.  After, the overlap of this translation is the number of positions that have a 1 in both images.

(Note also that a translation does not include any kind of rotation.)

What is the largest possible overlap?

Example 1:

Input: A = [[1,1,0],
            [0,1,0],
            [0,1,0]]
       B = [[0,0,0],
            [0,1,1],
            [0,0,1]]
Output: 3
Explanation: We slide A to right by 1 unit and down by 1 unit.
/* 计算两张图片经过平移后重合的1最多是多少
 * 注意移动后重合的位置发生变化 因此不能用dp
 * length<30 上暴力O(n^4) 900*900=810000 控制在百万应该OK
 * */
class Solution {
public:
    int largestOverlap(vector<vector<int>>& A, vector<vector<int>>& B) {
        return max(myIOU(A, B), myIOU(B, A));
    }
    int myIOU(vector<vector<int>>& A, vector<vector<int>>& B){//
        int len=A.size(), ret=0;
        // 固定A 移动B row,col是移动量
        for(int row=0;row<len;row++){
            for(int col=0;col<len;col++){
                int cnt=0;
                for(int i=row;i<len;i++){
                    for(int j=col;j<len;j++){
                        if(A[i][j]==1 && B[i-row][j-col]==1)    cnt++;
                    }
                }
                cout<<row<<" "<<col<<" "<<cnt<<endl;
                ret = max(ret, cnt);
            }
        }
        return ret;
    }
};

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Overlap Transformer是一种轻量且具有yaw角旋转不变性的Transformer网络,用于基于激光雷达的地点识别。它主要利用range image的深度信息来实现快速实时的地点识别。[3] Overlap Transformer的核心思想是将range image编码器的编码结果输入到Transformer结构中进行特异性增强。range image编码器将特征图的高度压缩至1,宽度方向维度不变,通道方向扩张。压缩后的特征图经过Transformer的注意力机制处理,以增强被编码器编码后的特征之间的联系。这样的设计旨在兼顾全局感受野和局部感受野的信息,增强地点描述子的表达能力。 Overlap Transformer的设计还考虑到了yaw角旋转不变性。它通过整体结构设计,确保生成的全局地点识别描述子具备yaw角旋转不变性,从而使得该方法对多角度地点识别具有较强的鲁棒性。具体的设计和算法流程可以参考OverlapTransformer论文。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [最新开源!基于LiDAR的位置识别网络OverlapTransformer,RAL/IROS 2022](https://blog.csdn.net/electech6/article/details/125875549)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值