当前位置:网站首页>[image registration] improved SAR image registration based on sar-sift with matlab code
[image registration] improved SAR image registration based on sar-sift with matlab code
2022-06-29 00:13:00 【Matlab scientific research studio】
1 brief introduction
Compared to traditional SIFT Algorithm ,SAR-SIFT It is mainly modified in two aspects , The first is to improve the pixel gradient calculation method , The difference is replaced by the ratio . The second is to improve the method of generating the final descriptor . Through the modification of these two aspects , This makes this method more suitable for general multiplicative speckle noise SAR Images . about SAR Multiplicative noise in images ,SAR-SIFT To some extent, compared with the original SIFT Better adaptability , But when SAR When there are strong noise spots in the image ,SAR-SIFT There will also be a large number of outliers when the algorithm extracts feature points . in the light of SAR Strong multiplicative speckle noise in pictures , First of all, with the help of SAR-SIFT The algorithm extracts features , Then, sparse coding is used to effectively use feature clustering to eliminate the outliers caused by strong speckle noise in the process of feature extraction . Thus through SAR-SIFT Algorithm combination FSC Algorithm to suppress SAR Noise spots in the image , Improve SAR The accuracy and robustness of image registration .





2 Part of the code
function [k_percentile]=compute_k_percentile_auto(gradient_x,gradient_y,perc)
% This function calculates a contrast parameter k, This contrast parameter is used to calculate the diffusion coefficient
%gradient_x Is the gradient in the horizontal direction ,gradient_y Is the gradient in the vertical direction
%perc Is the percentile of the gradient histogram , The default value is 0.7,k The value of is determined according to the percentile
% The conductivity functions are all k The increasing function of , So for the same gradient value , If k It's worth more , Then the value of conduction coefficient is larger
% Therefore, the diffusion is large , Severe smoothness , So we can see that , If you want to keep the details, you need smaller k value
% This function automatically calculates k value , So there is no need to specify bin Size
% Histogram interval
unit=0.005;
% Ignore the boundary to calculate the maximum value of the gradient
gradient=sqrt(gradient_x.^2+gradient_y.^2);
[M,N]=size(gradient);
temp_gradient=gradient(2:M-1,2:N-1);
% Ignore Boundary Calculation histogram
temp_gradient=temp_gradient(temp_gradient>0);
max_gradient=max(max(temp_gradient));
min_gradient=min(min(temp_gradient));
temp_gradient=round((temp_gradient-min_gradient)/unit);
nbin=round((max_gradient-min_gradient)/unit);
hist=zeros(1,nbin+1);
[M1,N1]=size(temp_gradient);
sum_pix=M1*N1;% Number of non-zero pixel gradients
% Calculate the histogram
for i=1:1:M1
for j=1:1:N1
hist(temp_gradient(i,j)+1)=hist(temp_gradient(i,j)+1)+1;
end
end
% Histogram percentile
nthreshold=perc*sum_pix;
nelements=0;
temp_i=0;
for i=1:1:nbin+1
nelements=nelements+hist(i);
if(nelements>=nthreshold)
temp_i=i;
break;
end
end
% k_percentile=max_gradient*(temp_i)/(nbin+1);
k_percentile=(temp_i-1)*unit+min_gradient;
end
3 Simulation results





4 reference
[1] Li Pei , Jiang Gang , and Ma Qianli . " be based on SAR-SIFT The improved SAR Image registration ." Mapping Bulletin (2021).
About bloggers : Good at intelligent optimization algorithms 、 Neural networks predict 、 signal processing 、 Cellular automata 、 The image processing 、 Path planning 、 UAV and other fields Matlab Simulation , relevant matlab Code problems can be exchanged by private letter .
边栏推荐
- Stm32f407 ------- GPIO input experiment
- 随笔记:插入排序 --from wcc
- 单机多实例MYSQL主从复制
- MySQL 8.0 above reporting 2058 solution
- Stm32f407------- general timer
- Single machine multi instance MySQL master-slave replication
- scp拷贝文件夹
- The second session of question swiping and clock out activity -- solving the switching problem with recursion as the background (III)
- [C Prime plus chapitre II Questions de programmation après la Classe]
- JVM底层又是如何实现synchronized的
猜你喜欢

Trois questions PWN

MapReduce案例

The company has a new Post-00 test paper king. The old oilman said that he could not do it. He has been

Leetcode daily question: implementing strstr()

mysql 8.0以上报2058 解决方式

MSYQL is abnormal. Don't worry. Mr. Allen will point out the puzzle

Sword finger offer 12 Path in matrix

每日一题: 数组中数字出现的次数

【LeetCode】21. 合并两个有序链表 - Go 语言题解

LinkedIn datahub - experience sharing
随机推荐
Stm32f407-------- NVIC interrupt priority management
基于.NetCore开发博客项目 StarBlog - (13) 加入友情链接功能
12.物體檢測Mask-Rcnn
PHP函数file_get_contents与操作系统的内存映射
Typescript -- Section 7 enumeration
Typescript -- Section 3: Interface
畢業三年的25歲碼農總結
LinkedIn datahub - experience sharing
Introduction to JVM working principle
Three PWN questions
Is it reliable and safe to avoid five in case of stock trading account opening
Daily question 1: the number of numbers in the array 2
Use and principle of handlerthread
The second session of question swiping and clock out activity -- solving the switching problem with recursion as the background (III)
Daily question 1: the number of numbers in the array
Along with the notes: methods simulating array like classes
炒股开户万一免五是靠谱么,安全么
With notes: insert sort --from WCC
《英语语法新思维 基础版2》读书笔记(一)
三个pwn题