Home

Awesome

HSIR

PyPI Documentation Status

Out-of-box Hyperspectral Image Restoration Toolbox

<img src="https://github.com/Vandermode/QRNN3D/raw/master/imgs/PaviaU.gif" height="140px"/> <img src="https://github.com/Vandermode/QRNN3D/raw/master/imgs/Indian_pines.gif" height="140px"/> <img src="https://github.com/Vandermode/QRNN3D/raw/master/imgs/Urban.gif" height="140px"/>

<sub>Denoising for remotely sensed images from QRNN3D</sub>

Install

pip install hsir

Usage

Here are some runable examples, please refer to the code for more options.

python hsirun.train -a hsir.model.qrnn3d.qrnn3d
python hsirun.test -a hsir.model.qrnn3d.qrnn3d -r qrnn3d.pth -t icvl_512_50

Benchmark

Pretrained Models | Training Log | Datasets <br> <sub>Baidu Drive's Share Code=HSIR</sub>

<details> <summary>Supported Models</summary> <br> </details> <details> <summary>Gaussian Denoising on ICVL</summary> <table> <thead> <tr> <th rowspan="2"></th> <th></th> <th></th> <th></th> <th colspan="3">Sigma=30</th> <th colspan="3">Sigma=50</th> <th colspan="3">Sigma=70</th> <th colspan="3">Sigma=Blind</th> </tr> <tr> <th>Params(M)</th> <th>Runtime(s)</th> <th>FLOPs</th> <th>PSNR</th> <th>SSIM</th> <th>SAM</th> <th>PSNR</th> <th>SSIM</th> <th>SAM</th> <th>PSNR</th> <th>SSIM</th> <th>SAM</th> <th>PSNR</th> <th>SSIM</th> <th>SAM</th> </tr> </thead> <tbody> <tr> <td>Noisy</td> <td></td> <td></td> <td></td> <td>18.59</td> <td>0.110</td> <td>.0807</td> <td>14.15</td> <td>0.046</td> <td>0.991</td> <td>11.23</td> <td>0.025</td> <td>1.105</td> <td>17.34</td> <td>0.114</td> <td>0.859</td> </tr> <tr> <td>BM4D</td> <td></td> <td>154</td> <td></td> <td>38.45</td> <td>0.934</td> <td>0.126</td> <td>35.60</td> <td>0.889</td> <td>0.169</td> <td>33.70</td> <td>0.845</td> <td>0.207</td> <td>37.66</td> <td>0.914</td> <td>0.143</td> </tr> <tr> <td>TDL</td> <td></td> <td>18</td> <td></td> <td>40.58</td> <td>0.957</td> <td>0.062</td> <td>38.01</td> <td>0.932</td> <td>0.085</td> <td>36.36</td> <td>0.909</td> <td>0.105</td> <td>39.91</td> <td>0.946</td> <td>0.072</td> </tr> <tr> <td>ITSReg</td> <td></td> <td>907</td> <td></td> <td>41.48</td> <td>0.961</td> <td>0.088</td> <td>38.88</td> <td>0.941</td> <td>0.098</td> <td>36.71</td> <td>0.923</td> <td>0.112</td> <td>40.62</td> <td>0.953</td> <td>0.087</td> </tr> <tr> <td>LLRT</td> <td></td> <td>627</td> <td></td> <td>41.99</td> <td>0.967</td> <td>0.056</td> <td>38.99</td> <td>0.945</td> <td>0.075</td> <td>37.36</td> <td>0.930</td> <td>0.087</td> <td>40.97</td> <td>0.956</td> <td>0.064</td> </tr> <tr> <td>KBR</td> <td></td> <td>1755</td> <td></td> <td>41.48</td> <td>0.984</td> <td>0.088</td> <td>39.16</td> <td>0.974</td> <td>0.100</td> <td>36.71</td> <td>0.961</td> <td>0.113</td> <td>40.68</td> <td>0.979</td> <td>0.080</td> </tr> <tr> <td>WLRTR</td> <td></td> <td>1600</td> <td></td> <td>42.62</td> <td>0.988</td> <td>0.056</td> <td>39.72</td> <td>0.978</td> <td>0.073</td> <td>37.52</td> <td>0.967</td> <td>0.095</td> <td>41.66</td> <td>0.983</td> <td>0.064</td> </tr> <tr> <td>NGmeet</td> <td></td> <td>166</td> <td></td> <td>42.99</td> <td>0.989</td> <td>0.050</td> <td>40.26</td> <td>0.980</td> <td>0.059</td> <td>38.66</td> <td>0.974</td> <td>0.067</td> <td>42.23</td> <td>0.985</td> <td>0.053</td> </tr> <tr> <td>HSID</td> <td>0.40</td> <td>3</td> <td></td> <td>38.70</td> <td>0.949</td> <td>0.103</td> <td>36.17</td> <td>0.919</td> <td>0.134</td> <td>34.31</td> <td>0.886</td> <td>0.161</td> <td>37.80</td> <td>0.935</td> <td>0.116</td> </tr> <tr> <td>QRNN3D</td> <td>0.86</td> <td>0.73</td> <td></td> <td>42.22</td> <td>0.988</td> <td>0.062</td> <td>40.15</td> <td>0.982</td> <td>0.074</td> <td>38.30</td> <td>0.974</td> <td>0.094</td> <td>41.37</td> <td>0.985</td> <td>0.068</td> </tr> <tr> <td>TS3C</td> <td>0.83</td> <td>0.95</td> <td></td> <td>42.36</td> <td>0.986</td> <td>0.079</td> <td>40.47</td> <td>0.980</td> <td>0.087</td> <td>39.05</td> <td>0.974</td> <td>0.096</td> <td>41.52</td> <td>0.983</td> <td>0.085</td> </tr> <tr> <td>GRUNet</td> <td>14.2</td> <td>0.87</td> <td></td> <td>42.84</td> <td>0.989</td> <td>0.052</td> <td>40.75</td> <td>0.983</td> <td>0.062</td> <td>39.02</td> <td>0.977</td> <td>0.080</td> <td>42.03</td> <td>0.987</td> <td>0.057</td> </tr> </tbody> </table> </details> <details> <summary>Complex Denoising on ICVL</summary> <table> <thead> <tr> <th rowspan="2"></th> <th></th> <th></th> <th></th> <th colspan="3">non-iid</th> <th colspan="3">g+stripe</th> <th colspan="3">g+deadline</th> <th colspan="3">g+impulse</th> <th colspan="3">mixture</th> </tr> <tr> <th>Params(M)</th> <th>Runtime(s)</th> <th>FLOPs</th> <th>PSNR</th> <th>SSIM</th> <th>SAM</th> <th>PSNR</th> <th>SSIM</th> <th>SAM</th> <th>PSNR</th> <th>SSIM</th> <th>SAM</th> <th>PSNR</th> <th>SSIM</th> <th>SAM</th> <th>PSNR</th> <th>SSIM</th> <th>SAM</th> </tr> </thead> <tbody> <tr> <td>Noisy</td> <td></td> <td></td> <td></td> <td>18.25</td> <td>0.168</td> <td>0.898</td> <td>17.80</td> <td>0.159</td> <td>0.910</td> <td>17.61</td> <td>0.155</td> <td>0.917</td> <td>14.80</td> <td>0.114</td> <td>0.926</td> <td>14.08</td> <td>0.099</td> <td>0.944</td> </tr> <tr> <td>LRMR</td> <td></td> <td></td> <td></td> <td>32.80</td> <td>0.719</td> <td>0.185</td> <td>32.62</td> <td>0.717</td> <td>0.187</td> <td>31.83</td> <td>0.709</td> <td>0.227</td> <td>29.70</td> <td>0.623</td> <td>0.311</td> <td>28.68</td> <td>0.608</td> <td>0.353</td> </tr> <tr> <td>LRTV</td> <td></td> <td></td> <td></td> <td>33.62</td> <td>0.905</td> <td>0.077</td> <td>33.49</td> <td>0.905</td> <td>0.078</td> <td>32.37</td> <td>0.895</td> <td>0.115</td> <td>31.56</td> <td>0.871</td> <td>0.242</td> <td>30.47</td> <td>0.858</td> <td>0.287</td> </tr> <tr> <td>NMoG</td> <td></td> <td></td> <td></td> <td>34.51</td> <td>0.812</td> <td>0.187</td> <td>33.87</td> <td>0.799</td> <td>0.265</td> <td>32.87</td> <td>0.797</td> <td>0.276</td> <td>28.60</td> <td>0.652</td> <td>0.486</td> <td>27.31</td> <td>0.632</td> <td>0.513</td> </tr> <tr> <td>TDTV</td> <td></td> <td></td> <td></td> <td>38.14</td> <td>0.944</td> <td>0.075</td> <td>37.67</td> <td>0.940</td> <td>0.081</td> <td>36.15</td> <td>0.930</td> <td>0.099</td> <td>36.67</td> <td>0.935</td> <td>0.094</td> <td>34.77</td> <td>0.919</td> <td>0.113</td> </tr> <tr> <td>HSID</td> <td>0.40</td> <td>3</td> <td></td> <td>38.40</td> <td>0.947</td> <td>0.095</td> <td>37.77</td> <td>0.942</td> <td>0.104</td> <td>37.65</td> <td>0.940</td> <td>0.102</td> <td>35.00</td> <td>0.899</td> <td>0.174</td> <td>34.05</td> <td>0.888</td> <td>0.181</td> </tr> <tr> <td>TS3C</td> <td>0.83</td> <td>0.95</td> <td></td> <td>41.12</td> <td>0.986</td> <td>0.069</td> <td>40.66</td> <td>0.985</td> <td>0.077</td> <td>39.38</td> <td>0.982</td> <td>0.100</td> <td>35.92</td> <td>0.951</td> <td>0.205</td> <td>34.36</td> <td>0.945</td> <td>0.230</td> </tr> <tr> <td>QRNN3D</td> <td>0.86</td> <td>0.73</td> <td></td> <td>42.79</td> <td>0.978</td> <td>0.052</td> <td>42.35</td> <td>0.976</td> <td>0.055</td> <td>42.23</td> <td>0.976</td> <td>0.056</td> <td>39.23</td> <td>0.945</td> <td>0.109</td> <td>38.25</td> <td>0.938</td> <td>0.107</td> </tr> <tr> <td>GRUNet</td> <td>14.2</td> <td>0.87</td> <td></td> <td>42.89</td> <td>0.992</td> <td>0.047</td> <td>42.39</td> <td>0.991</td> <td>0.050</td> <td>42.11</td> <td>0.991</td> <td>0.050</td> <td>40.70</td> <td>0.985</td> <td>0.067</td> <td>38.51</td> <td>0.981</td> <td>0.081</td> </tr> </tbody> </table> </details>

Citation

If you find this repo helpful, please considering citing us.

@misc{hsir,
	author={Zeqiang Lai, Miaoyu Li, Ying Fu},
	title={HSIR: Out-of-box Hyperspectral Image Restoration Toolbox},
	year={2022},
	url={https://github.com/bit-isp/HSIR},
}

Visitors