LabelRS: An Automated Toolbox to Make Deep Learning Samples from Remote Sensing Images
Abstract
:1. Introduction
- 1.
- An efficient framework is proposed to make deep learning samples using multispectral remote sensing images, which contains sub-tools as semantic segmentation, object detection, and image classification. To our knowledge, it is the first complete framework for image annotation with remote sensing images.
- 2.
- LabelRS is fully developed and implemented, and it is open-source and freely downloadable at https://github.com/junjieliwhu/LabelRS (accessed on 12 May 2021).
- 3.
- Three cases are implemented to evaluate the reliability of LabelRS, and the experimental results show that LabelRS can automatically and efficiently produce deep learning samples for remote sensing images.
2. Functionality and Implementation
2.1. Principle and Functionality
2.1.1. Semantic Segmentation
- (1)
- Feature Merging Strategy
- (2)
- Split Large Targets
- (3)
- Band Combination and Stretching
- (4)
- Gray Level Transformation
- (5)
- Quality Control
Algorithm 1. Sliding Window for Semantic Segmentation. |
Input: polygon list PL, sample size t, image spatial resolution r, overlap size m output: sample grids SG 1 for each polygon Pi in PL 2 ex = Pi.GetExtent() 3 w, h, center = ex.width, ex.height,ex.center 4 if w < 2t and h <2t 5 grid = CreateSquare(center, t, r) 6 SG.append (grid) 7 elif w ≥ 2t and h < 2t 8 while center.x + t*r/2 > ex.Xmin 9 grid = CreateSquare(center, t, r) 10 SG.append (grid) 11 center.x = center.x − (t-m)*r 12 while center.x − t*r/2 < ex.Xmax 13 … 14 elif w < 2t and h ≥ 2t 15 … 16 else 17 center.x= ex.Xmin + t*r/2 18 center.y= ex.Ymax − t*r/2 19 while center.y + t*r/2 > ex.Ymin 20 while center.x − t*r/2 < ex.Xmax 21 grid = CreateSquare(center, t, r) 22 SG.append (grid) 23 center.x = center.x + (t-m)*r 24 center.y = center.y − (t-m)*r 25 center.x = ex.Xmin + t*r/2 26 return SG |
2.1.2. Object Detection
2.1.3. Image Classification
2.2. Implementation
2.2.1. Semantic Segmentation Tool
2.2.2. Object Detection Tool
2.2.3. Image Classification Tool
3. Study Cases
3.1. Making Water Samples
3.2. Making Dam Samples
3.3. Making Land Cover Classification Samples
4. Conclusions
Author Contributions
Funding
Data Availability Statement
Acknowledgments
Conflicts of Interest
References
- Simonyan, K.; Zisserman, A. Very deep convolutional networks for large-scale image recognition. arXiv 2014, arXiv:1409.1556. [Google Scholar]
- He, K.; Zhang, X.; Ren, S.; Sun, J. Deep residual learning for image recognition. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, Las Vegas, NV, USA, 26 June–1 July 2016; pp. 770–778. [Google Scholar]
- Girshick, R.; Donahue, J.; Darrell, T.; Malik, J. Rich feature hierarchies for accurate object detection and semantic segmentation. In Proceedings of the 2014 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), Columbus, OH, USA, 23–28 June 2014; pp. 580–587. [Google Scholar]
- Redmon, J.; Divvala, S.; Girshick, R.; Farhadi, A. You only look once: Unified, real-time object detection. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, Las Vegas, NV, USA, 26 June–1 July 2016; pp. 779–788. [Google Scholar]
- Long, J.; Shelhamer, E.; Darrell, T. Fully convolutional networks for semantic segmentation. In Proceedings of the 2015 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), Boston, MA, USA, 7–12 June 2015; pp. 3431–3440. [Google Scholar]
- Ronneberger, O.; Fischer, P.; Brox, T. U-net: Convolutional networks for biomedical image segmentation. In International Conference on Medical Image Computing and Computer-Assisted Intervention; Springer: Cham, Switzerland, 2015; pp. 234–241. [Google Scholar]
- Rezaee, M.; Mahdianpari, M.; Zhang, Y.; Salehi, B. Deep convolutional neural network for complex wetland classification using optical remote sensing imagery. IEEE J. Sel. Top. Appl. Earth Obs. Remote Sens. 2018, 11, 3030–3039. [Google Scholar] [CrossRef]
- Krizhevsky, A.; Sutskever, I.; Hinton, G.E. Imagenet classification with deep convolutional neural networks. Adv. Neural Inf. Process. Syst. 2012, 25, 1097–1105. [Google Scholar] [CrossRef]
- Chen, Z.; Zhang, T.; Ouyang, C. End-to-end airplane detection using transfer learning in remote sensing images. Remote Sens. 2018, 10, 139. [Google Scholar] [CrossRef] [Green Version]
- Wei, Y.; Zhang, K.; Ji, S. Simultaneous road surface and centerline extraction from large-scale remote sensing images using CNN-based segmentation and tracing. IEEE Trans. Geosci. Remote Sens. 2020, 58, 8919–8931. [Google Scholar] [CrossRef]
- Zhou, L.; Zhang, C.; Wu, M. D-linknet: Linknet with pretrained encoder and dilated convolution for high resolution satellite imagery road extraction. In Proceedings of the 2018 IEEE CVF Conference on Computer Vision and Pattern Recognition Workshops (CVPRW), Salt Lake City, UT, USA, 18–22 June 2018; pp. 182–186. [Google Scholar]
- Masi, G.; Cozzolino, D.; Verdoliva, L.; Scarpa, G. Pansharpening by convolutional neural networks. Remote Sens. 2016, 8, 594. [Google Scholar] [CrossRef] [Green Version]
- Yuan, Q.; Wei, Y.; Meng, X.; Shen, H.; Zhang, L. A multiscale and multidepth convolutional neural network for remote sensing imagery pan-sharpening. IEEE J. Sel. Top. Appl. Earth Obs. Remote Sens. 2018, 11, 978–989. [Google Scholar] [CrossRef] [Green Version]
- Merkle, N.; Auer, S.; Müller, R.; Reinartz, P. Exploring the potential of conditional adversarial networks for optical and SAR image matching. IEEE J. Sel. Top. Appl. Earth Obs. Remote Sens. 2018, 11, 1811–1820. [Google Scholar] [CrossRef]
- Wang, S.; Quan, D.; Liang, X.; Ning, M.; Guo, Y.; Jiao, L. A deep learning framework for remote sensing image registration. ISPRS J. Photogram. Remote Sens. 2018, 145, 148–164. [Google Scholar] [CrossRef]
- Fiedler, N.; Bestmann, M.; Hendrich, N. Imagetagger: An open source online platform for collaborative image labeling. In Robot World Cup; Springer: Cham, Switzerland, 2018; pp. 162–169. [Google Scholar]
- Qin, X.; He, S.; Zhang, Z.; Dehghan, M.; Jagersand, M. Bylabel: A boundary based semi-automatic image annotation tool. In Proceedings of the 2018 IEEE Winter Conference on Applications of Computer Vision (WACV), Lake Tahoe, NV, USA, 12–15 March 2018; pp. 1804–1813. [Google Scholar]
- Dutta, A.; Zisserman, A. The VIA annotation software for images, audio and video. In Proceedings of the 27th ACM International Conference on Multimedia, New York, NY, USA, 15 October 2019; pp. 2276–2279. [Google Scholar]
- Shang, X.; Di, D.; Xiao, J.; Cao, Y.; Yang, X.; Chua, T.S. Annotating objects and relations in user-generated videos. In Proceedings of the 2019 on International Conference on Multimedia Retrieval, Ottawa, ON, Canada, 10–13 June 2019; pp. 279–287. [Google Scholar]
- Abrami, G.; Stoeckel, M.; Mehler, A. TextAnnotator: A UIMA based tool for the simultaneous and collaborative annotation of texts. In Proceedings of the 12th Language Resources and Evaluation Conference, Marseille, France, 13–15 May 2020; pp. 891–900. [Google Scholar]
- Wei, C.H.; Allot, A.; Leaman, R.; Lu, Z. PubTator central: Automated concept annotation for biomedical full text articles. Nucleic Acids Res. 2019, 47, W587–W593. [Google Scholar] [CrossRef] [PubMed] [Green Version]
- Grover, M.S.; Bamdev, P.; Kumar, Y.; Hama, M.; Shah, R.R. Audino: A Modern Annotation Tool for Audio and Speech. arXiv 2020, arXiv:2006.05236. [Google Scholar]
- Poletto, F.; Stranisci, M.; Sanguinetti, M.; Patti, V.; Bosco, C. Hate speech annotation: Analysis of an italian twitter corpus. In Proceedings of the 4th Italian Conference on Computational Linguistics, Rome, Italy, 11–12 December 2017; Volume 2006, pp. 1–6. [Google Scholar]
- Labelme: Image Polygonal Annotation with Python. Available online: https://github.com/wkentaro/labelme (accessed on 12 May 2021).
- LabelImg. Available online: https://github.com/tzutalin/labelImg (accessed on 12 May 2021).
- Computer Vision Annotation Tool (CVAT). Available online: https://github.com/openvinotoolkit/cvat (accessed on 12 May 2021).
- RectLabel. An Image Annotation Tool to Label Images for Bounding Box Object Detection and Segmentation. Available online: https://rectlabel.com (accessed on 12 May 2021).
- Labelbox: The Leading Training Data Platform for Data Labeling. Available online: https://labelbox.com (accessed on 12 May 2021).
- Image Annotation Tools: Which One to Pick in 2020. Available online: https://bohemian.ai/blog/image-annotation-tools-which-one-pick-2020 (accessed on 12 May 2021).
- Yang, Y.; Newsam, S. Bag-of-visual-words and spatial extensions for land-use classification. In Proceedings of the 18th SIGSPATIAL International Conference on Advances in Geographic Information Systems, San Jose, CA, USA, 2–5 November 2010; pp. 270–279. [Google Scholar]
- Xia, G.S.; Yang, W.; Delon, J.; Gousseau, Y.; Sun, H.; Maître, H. Structural high-resolution satellite image indexing. In Proceedings of the ISPRS TC VII Symposium-100 Years ISPRS, Vienna, Austria, 5–7 July 2010; Volume 38, pp. 298–303. [Google Scholar]
- Zou, Q.; Ni, L.; Zhang, T.; Wang, Q. Deep learning based feature selection for remote sensing scene classification. IEEE Geosci. Remote Sens. Lett. 2015, 12, 2321–2325. [Google Scholar] [CrossRef]
- Xia, G.-S.; Hu, J.; Hu, F.; Shi, B.; Bai, X.; Zhong, Y.; Zhang, L.; Lu, X. AID: A Benchmark Data Set for Performance Evaluation of Aerial Scene Classification. IEEE Trans. Geosci. Remote Sens. 2017, 55, 3965–3981. [Google Scholar] [CrossRef] [Green Version]
- Cramer, M. The DGPF-test on digital airborne camera evaluation overview and test design. Photogramm. Fernerkund. Geoinf. 2010, 75–84. [Google Scholar] [CrossRef] [PubMed]
- Demir, I.; Koperski, K.; Lindenbaum, D.; Pang, G.; Huang, J.; Basu, S.; Hughes, F.; Tuia, D.; Raskar, R. Deepglobe 2018: A challenge to parse the earth through satellite images. In Proceedings of the 2018 Conference on Computer Vision and Pattern Recognition, Salt Lake City, UT, USA, 18–22 June 2018; pp. 172–181. [Google Scholar]
- Launeau, P.; Cruden, A.R.; Bouchez, J.L. Mineral recognition in digital images of rocks: A new approach using multichannel classification. Can. Miner. 1994, 32, 919–933. [Google Scholar]
- Lanari, P.; Vho, A.; Bovay, T.; Airaghi, L.; Centrella, S. Quantitative Compositional Mapping of Mineral Phases by Electron Probe Micro-Analyser; Geological Society of London Special Publications: London, UK, 2019; Volume 478, pp. 39–63. [Google Scholar]
- Samala, R.K.; Chan, H.P.; Hadjiiski, L.; Helvie, M.A.; Richter, C.D.; Cha, K.H. Breast cancer diagnosis in digital breast tomosynthesis: Effects of training sample size on multi-stage transfer learning using deep neural nets. IEEE Trans. Med. Imaging 2018, 38, 686–696. [Google Scholar] [CrossRef]
- Carlson, T.N.; Ripley, D.A. On the relation between NDVI, fractional vegetation cover, and leaf area index. Remote Sens. Environ. 1997, 62, 241–252. [Google Scholar] [CrossRef]
- McFeeters, S.K. The use of the Normalized Difference Water Index (NDWI) in the delineation of open water features. Int. J. Remote Sens. 1996, 17, 1425–1432. [Google Scholar] [CrossRef]
- Haklay, M.; Weber, P. Openstreetmap: User-generated street maps. IEEE Pervasive Comput. 2008, 7, 12–18. [Google Scholar] [CrossRef] [Green Version]
- Visvalingam, M.; Whyatt, J.D. The Douglas-Peucker algorithm for line simplification: Re-evaluation through visualization. In Computer Graphics Forum; Blackwell Publishing Ltd.: Oxford, UK, 1990; Volume 9, pp. 213–225. [Google Scholar]
- Everingham, M.; van Gool, L.; Williams, C.K.; Winn, J.; Zisserman, A. The pascal visual object classes (voc) challenge. Int. J. Comput. Vis. 2010, 88, 303–338. [Google Scholar] [CrossRef] [Green Version]
- Geiger, A.; Lenz, P.; Stiller, C.; Urtasun, R. Vision meets robotics: The kitti dataset. Int. J. Robot. Res. 2013, 32, 1231–1237. [Google Scholar] [CrossRef] [Green Version]
- Prigent, C.; Papa, F.; Aires, F.; Jimenez, C.; Rossow, W.B.; Matthews, E. Changes in land surface water dynamics since the 1990s and relation to population pressure. Geophys. Res. Lett. 2010, 39. [Google Scholar] [CrossRef] [Green Version]
- Isikdogan, F.; Bovik, A.C.; Passalacqua, P. Surface water mapping by deep learning. IEEE J. Sel. Top. Appl. Earth Obs. Remote Sens. 2017, 10, 4909–4918. [Google Scholar] [CrossRef]
- Chen, Y.; Fan, R.; Yang, X.; Wang, J.; Latif, A. Extraction of urban water bodies from high-resolution remote-sensing imagery using deep learning. Water 2018, 10, 585. [Google Scholar] [CrossRef] [Green Version]
- Li, Z.; Wang, R.; Zhang, W.; Hu, F.; Meng, L. Multiscale Features Supported DeepLabV3+ Optimization Scheme for Accurate Water Semantic Segmentation. IEEE Access 2019, 7, 155787–155804. [Google Scholar] [CrossRef]
- Vala, H.J.; Baxi, A. A review on Otsu image segmentation algorithm. Int. J. Adv. Res. Comput. Eng. Technol. 2013, 2, 387–389. [Google Scholar]
Tool | Open Source | Online/Offline | URL | Supported Platforms | Pros | Cons |
---|---|---|---|---|---|---|
LabelImg | True | Offline | https://github.com/tzutalin/labelImg (accessed on 12 May 2021) | Linux/windows/macOS | Easy to install and use | It only supports labelling the bounding boxes |
Labelme | True | Offline | https://github.com/wkentaro/labelme (accessed on 12 May 2021) | Ubuntu/macOS/Windows | Easy to install and use | The label boundary is rough and inaccurate |
CVAT | True | Online | https://cvat.org (accessed on 12 May 2021) | Ubuntu/macOS/Windows |
| It works only with Google’s Chrome browser. |
RectLabel | False | Offline | http://rectlabel.com (accessed on 12 May 2021) | macOS | Label pixels with brush and superpixel tools |
|
Labelbox | False | Online | https://labelbox.com (accessed on 12 May 2021) | Linux/windows/macOS |
| Limited free license to 2500 labels/year |
Supervise.ly | False | Online | https://supervise.ly (accessed on 12 May 2021) | Linux/windows/macOS |
| - |
Label Studio | True | Online | https://labelstud.io (accessed on 12 May 2021) | Linux/windows/macOS | Supports labeling of data of different types. | - |
VoTT | True | Online/Offline | https://github.com/microsoft/VoTT (accessed on 12 May 2021) | Linux/windows/macOS | Provides an end-to-end machine learning pipeline | Unstable |
Dataturks | True | Online/Offline | https://dataturks.com (accessed on 12 May 2021) | Linux/windows/macOS | Provides a fully self-hosted data annotation solution | Using the trackpad for scrolling results in unwanted zooming of the image [29] |
Name | Type | Required | Description |
---|---|---|---|
Input Image | Raster Dataset | True | The input source imagery |
Input Features | Polygon Feature Class | True | The labeled vector data |
Class Field | String | True | The field used to distinguish different categories |
Tile Size | int | False | The size of the output sample |
Overlap Size | int | False | The overlap size of the output sample |
Output Path | Folder | True | The ouput folder |
Output Format | String | False | The format of the output sample, including JPEG, PNG and TIFF |
Bands | String | False | Bands used to generate samples |
Stretching Method | String | False | Band stretching method, including PTS, SDS and MMS |
Stretching Parameters | String | False | The input parameters of band stretching |
Gray Level Transformation | String | False | The method of setting output label value, including None, Maximum Contrast, Positive Integer, and Custom |
GLT Parameters | String | False | The input parameters when Gray Level Transformation is Custom |
Class Imbalance Filter | float | False | Filter out samples with few foreground pixels |
Write Metadata | boolean | False | Whether to write metadata in the XML file |
Name | Type | Required | Description |
---|---|---|---|
Input Image | Raster Dataset | True | The input source imagery |
Input Features | Polygon Feature Class | True | The labeled vector data |
Class Field | String | True | The field used to distinguish different categories |
Tile Size | int | False | The size of the output sample |
Meta Format | String | False | The format of the output metadata labels, including PASCAL VOC, YOLO and KITTI |
Output Path | Folder | True | The ouput folder |
Output Format | String | False | The format of the output sample, including JPEG, PNG and TIFF |
Overlap Size | int | False | The overlap size of the output sample |
Stretching Method | String | False | Band stretching method, including PTS, SDS and MMS |
Stretching Parameters | String | False | The input parameters of band stretching |
Bands | String | False | Bands used to generate samples |
Name | Type | Required | Description |
---|---|---|---|
Input Image | Raster Dataset | True | The input source imagery |
Input Features | Polygon Feature Class | True | The labeled vector data |
Class Field | String | True | The field used to distinguish different categories |
Tile Size | int | False | The size of the output sample |
Output Path | Folder | True | The ouput folder |
Output Format | String | False | The format of the output sample, including JPEG, PNG and TIFF |
Overlap Size | int | False | The overlap size of the output sample |
Bands | String | False | Bands used to generate samples |
Resample | String | False | Resampling method, including Nearest, Bilinear and Cubic |
Stretching Method | String | False | Band stretching method, including PTS, SDS and MMS |
Stretching Parameters | String | False | The input parameters of band stretching |
Tool | Classification Objects | Number of Images | Labeled Area (km2) | Output Sample Size | Number of Output Samples | Running Time (s) | Average Processing Time Per Sample (s) |
---|---|---|---|---|---|---|---|
semantic segmentation | water bodies | 8 | 151.11 | 256 × 256 | 954 | 1809 | 1.90 |
object detection | dam, bridge | 23 | 14.57 | 512 × 512 | 286 | 453 | 1.58 |
image classification | farmland, buildings, forest, water | 3 | 360.43 | 128 × 128 | 1086 | 994 | 0.92 |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2021 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Li, J.; Meng, L.; Yang, B.; Tao, C.; Li, L.; Zhang, W. LabelRS: An Automated Toolbox to Make Deep Learning Samples from Remote Sensing Images. Remote Sens. 2021, 13, 2064. https://doi.org/10.3390/rs13112064
Li J, Meng L, Yang B, Tao C, Li L, Zhang W. LabelRS: An Automated Toolbox to Make Deep Learning Samples from Remote Sensing Images. Remote Sensing. 2021; 13(11):2064. https://doi.org/10.3390/rs13112064
Chicago/Turabian StyleLi, Junjie, Lingkui Meng, Beibei Yang, Chongxin Tao, Linyi Li, and Wen Zhang. 2021. "LabelRS: An Automated Toolbox to Make Deep Learning Samples from Remote Sensing Images" Remote Sensing 13, no. 11: 2064. https://doi.org/10.3390/rs13112064
APA StyleLi, J., Meng, L., Yang, B., Tao, C., Li, L., & Zhang, W. (2021). LabelRS: An Automated Toolbox to Make Deep Learning Samples from Remote Sensing Images. Remote Sensing, 13(11), 2064. https://doi.org/10.3390/rs13112064