├── LICENSE
├── README.md
├── demo
├── DatasetRainNet.py
└── demo.py
├── docs
├── css
│ ├── bootstrap-theme.min.css
│ ├── bootstrap.min.css
│ ├── ie10-viewport-bug-workaround.css
│ └── jumbotron.css
├── favicon.ico
├── fonts
│ ├── glyphicons-halflings-regular.eot
│ ├── glyphicons-halflings-regular.svg
│ ├── glyphicons-halflings-regular.ttf
│ ├── glyphicons-halflings-regular.woff
│ └── glyphicons-halflings-regular.woff2
├── img
│ ├── 1.png
│ ├── 2.png
│ ├── HRGT_201009539_201009571.webp
│ ├── HRGT_201010607_201010639.webp
│ ├── HRGT_201011587_201011619.webp
│ ├── HRGT_201108607_201108655.webp
│ ├── HRGT_201109091_201109123.webp
│ ├── HRGT_201110059_201110091.webp
│ ├── LRGT_201009539_201009571.webp
│ ├── LRGT_201010607_201010639.webp
│ ├── LRGT_201011587_201011619.webp
│ ├── LRGT_201108607_201108655.webp
│ ├── LRGT_201109091_201109123.webp
│ ├── LRGT_201110059_201110091.webp
│ ├── girl2-RGB.png
│ ├── girl2.gif
│ ├── logo.png
│ ├── logo1.png
│ ├── new.gif
│ ├── region.png
│ ├── results1.PNG
│ ├── title.png
│ ├── university.png
│ └── vggface2_hq_compare.png
├── index.html
└── js
│ ├── bootstrap.min.js
│ ├── ie-emulation-modes-warning.js
│ ├── ie10-viewport-bug-workaround.js
│ └── vendor
│ └── jquery.min.js
└── scripts
├── dataloader_hdf5.py
└── dataset_prepare_hdf5.py
/LICENSE:
--------------------------------------------------------------------------------
1 | Apache License
2 | Version 2.0, January 2004
3 | http://www.apache.org/licenses/
4 |
5 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
6 |
7 | 1. Definitions.
8 |
9 | "License" shall mean the terms and conditions for use, reproduction,
10 | and distribution as defined by Sections 1 through 9 of this document.
11 |
12 | "Licensor" shall mean the copyright owner or entity authorized by
13 | the copyright owner that is granting the License.
14 |
15 | "Legal Entity" shall mean the union of the acting entity and all
16 | other entities that control, are controlled by, or are under common
17 | control with that entity. For the purposes of this definition,
18 | "control" means (i) the power, direct or indirect, to cause the
19 | direction or management of such entity, whether by contract or
20 | otherwise, or (ii) ownership of fifty percent (50%) or more of the
21 | outstanding shares, or (iii) beneficial ownership of such entity.
22 |
23 | "You" (or "Your") shall mean an individual or Legal Entity
24 | exercising permissions granted by this License.
25 |
26 | "Source" form shall mean the preferred form for making modifications,
27 | including but not limited to software source code, documentation
28 | source, and configuration files.
29 |
30 | "Object" form shall mean any form resulting from mechanical
31 | transformation or translation of a Source form, including but
32 | not limited to compiled object code, generated documentation,
33 | and conversions to other media types.
34 |
35 | "Work" shall mean the work of authorship, whether in Source or
36 | Object form, made available under the License, as indicated by a
37 | copyright notice that is included in or attached to the work
38 | (an example is provided in the Appendix below).
39 |
40 | "Derivative Works" shall mean any work, whether in Source or Object
41 | form, that is based on (or derived from) the Work and for which the
42 | editorial revisions, annotations, elaborations, or other modifications
43 | represent, as a whole, an original work of authorship. For the purposes
44 | of this License, Derivative Works shall not include works that remain
45 | separable from, or merely link (or bind by name) to the interfaces of,
46 | the Work and Derivative Works thereof.
47 |
48 | "Contribution" shall mean any work of authorship, including
49 | the original version of the Work and any modifications or additions
50 | to that Work or Derivative Works thereof, that is intentionally
51 | submitted to Licensor for inclusion in the Work by the copyright owner
52 | or by an individual or Legal Entity authorized to submit on behalf of
53 | the copyright owner. For the purposes of this definition, "submitted"
54 | means any form of electronic, verbal, or written communication sent
55 | to the Licensor or its representatives, including but not limited to
56 | communication on electronic mailing lists, source code control systems,
57 | and issue tracking systems that are managed by, or on behalf of, the
58 | Licensor for the purpose of discussing and improving the Work, but
59 | excluding communication that is conspicuously marked or otherwise
60 | designated in writing by the copyright owner as "Not a Contribution."
61 |
62 | "Contributor" shall mean Licensor and any individual or Legal Entity
63 | on behalf of whom a Contribution has been received by Licensor and
64 | subsequently incorporated within the Work.
65 |
66 | 2. Grant of Copyright License. Subject to the terms and conditions of
67 | this License, each Contributor hereby grants to You a perpetual,
68 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable
69 | copyright license to reproduce, prepare Derivative Works of,
70 | publicly display, publicly perform, sublicense, and distribute the
71 | Work and such Derivative Works in Source or Object form.
72 |
73 | 3. Grant of Patent License. Subject to the terms and conditions of
74 | this License, each Contributor hereby grants to You a perpetual,
75 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable
76 | (except as stated in this section) patent license to make, have made,
77 | use, offer to sell, sell, import, and otherwise transfer the Work,
78 | where such license applies only to those patent claims licensable
79 | by such Contributor that are necessarily infringed by their
80 | Contribution(s) alone or by combination of their Contribution(s)
81 | with the Work to which such Contribution(s) was submitted. If You
82 | institute patent litigation against any entity (including a
83 | cross-claim or counterclaim in a lawsuit) alleging that the Work
84 | or a Contribution incorporated within the Work constitutes direct
85 | or contributory patent infringement, then any patent licenses
86 | granted to You under this License for that Work shall terminate
87 | as of the date such litigation is filed.
88 |
89 | 4. Redistribution. You may reproduce and distribute copies of the
90 | Work or Derivative Works thereof in any medium, with or without
91 | modifications, and in Source or Object form, provided that You
92 | meet the following conditions:
93 |
94 | (a) You must give any other recipients of the Work or
95 | Derivative Works a copy of this License; and
96 |
97 | (b) You must cause any modified files to carry prominent notices
98 | stating that You changed the files; and
99 |
100 | (c) You must retain, in the Source form of any Derivative Works
101 | that You distribute, all copyright, patent, trademark, and
102 | attribution notices from the Source form of the Work,
103 | excluding those notices that do not pertain to any part of
104 | the Derivative Works; and
105 |
106 | (d) If the Work includes a "NOTICE" text file as part of its
107 | distribution, then any Derivative Works that You distribute must
108 | include a readable copy of the attribution notices contained
109 | within such NOTICE file, excluding those notices that do not
110 | pertain to any part of the Derivative Works, in at least one
111 | of the following places: within a NOTICE text file distributed
112 | as part of the Derivative Works; within the Source form or
113 | documentation, if provided along with the Derivative Works; or,
114 | within a display generated by the Derivative Works, if and
115 | wherever such third-party notices normally appear. The contents
116 | of the NOTICE file are for informational purposes only and
117 | do not modify the License. You may add Your own attribution
118 | notices within Derivative Works that You distribute, alongside
119 | or as an addendum to the NOTICE text from the Work, provided
120 | that such additional attribution notices cannot be construed
121 | as modifying the License.
122 |
123 | You may add Your own copyright statement to Your modifications and
124 | may provide additional or different license terms and conditions
125 | for use, reproduction, or distribution of Your modifications, or
126 | for any such Derivative Works as a whole, provided Your use,
127 | reproduction, and distribution of the Work otherwise complies with
128 | the conditions stated in this License.
129 |
130 | 5. Submission of Contributions. Unless You explicitly state otherwise,
131 | any Contribution intentionally submitted for inclusion in the Work
132 | by You to the Licensor shall be under the terms and conditions of
133 | this License, without any additional terms or conditions.
134 | Notwithstanding the above, nothing herein shall supersede or modify
135 | the terms of any separate license agreement you may have executed
136 | with Licensor regarding such Contributions.
137 |
138 | 6. Trademarks. This License does not grant permission to use the trade
139 | names, trademarks, service marks, or product names of the Licensor,
140 | except as required for reasonable and customary use in describing the
141 | origin of the Work and reproducing the content of the NOTICE file.
142 |
143 | 7. Disclaimer of Warranty. Unless required by applicable law or
144 | agreed to in writing, Licensor provides the Work (and each
145 | Contributor provides its Contributions) on an "AS IS" BASIS,
146 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
147 | implied, including, without limitation, any warranties or conditions
148 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
149 | PARTICULAR PURPOSE. You are solely responsible for determining the
150 | appropriateness of using or redistributing the Work and assume any
151 | risks associated with Your exercise of permissions under this License.
152 |
153 | 8. Limitation of Liability. In no event and under no legal theory,
154 | whether in tort (including negligence), contract, or otherwise,
155 | unless required by applicable law (such as deliberate and grossly
156 | negligent acts) or agreed to in writing, shall any Contributor be
157 | liable to You for damages, including any direct, indirect, special,
158 | incidental, or consequential damages of any character arising as a
159 | result of this License or out of the use or inability to use the
160 | Work (including but not limited to damages for loss of goodwill,
161 | work stoppage, computer failure or malfunction, or any and all
162 | other commercial damages or losses), even if such Contributor
163 | has been advised of the possibility of such damages.
164 |
165 | 9. Accepting Warranty or Additional Liability. While redistributing
166 | the Work or Derivative Works thereof, You may choose to offer,
167 | and charge a fee for, acceptance of support, warranty, indemnity,
168 | or other liability obligations and/or rights consistent with this
169 | License. However, in accepting such obligations, You may act only
170 | on Your own behalf and on Your sole responsibility, not on behalf
171 | of any other Contributor, and only if You agree to indemnify,
172 | defend, and hold each Contributor harmless for any liability
173 | incurred by, or claims asserted against, such Contributor by reason
174 | of your accepting any such warranty or additional liability.
175 |
176 | END OF TERMS AND CONDITIONS
177 |
178 | APPENDIX: How to apply the Apache License to your work.
179 |
180 | To apply the Apache License to your work, attach the following
181 | boilerplate notice, with the fields enclosed by brackets "[]"
182 | replaced with your own identifying information. (Don't include
183 | the brackets!) The text should be enclosed in the appropriate
184 | comment syntax for the file format. We also recommend that a
185 | file or class name and description of purpose be included on the
186 | same "printed page" as the copyright notice for easier
187 | identification within third-party archives.
188 |
189 | Copyright [yyyy] [name of copyright owner]
190 |
191 | Licensed under the Apache License, Version 2.0 (the "License");
192 | you may not use this file except in compliance with the License.
193 | You may obtain a copy of the License at
194 |
195 | http://www.apache.org/licenses/LICENSE-2.0
196 |
197 | Unless required by applicable law or agreed to in writing, software
198 | distributed under the License is distributed on an "AS IS" BASIS,
199 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
200 | See the License for the specific language governing permissions and
201 | limitations under the License.
202 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # RainNet: A Large-Scale Imagery Dataset and Benchmark for Spatial Precipitation Downscaling
2 | # Accepted by NeurIPS 2022
3 | [Xuanhong Chen*](https://scholar.google.com/citations?user=UuCqlfEAAAAJ&hl=en), [Kairui Feng*](https://scholar.google.com/citations?user=4N5hE8YAAAAJ&hl=en), Naiyuan Liu, [Bingbing Ni**](https://scholar.google.com/citations?user=eUbmKwYAAAAJ&hl=en), Yifan Lu, Zhengyan Tong , Ziang Liu
4 |
5 | \* Equal contribution
6 | \*\* Corresponding author
7 |
8 | [[Project Website]](https://neuralchen.github.io/RainNet) [[Paper]](https://arxiv.org/abs/2012.09700) [[NeurIPS2022 Presentation]](https://drive.google.com/file/d/14phfx_h0iLJAdKv_q13cO7c9NbJGC86H/view?usp=share_link)
9 | [[Supplementary Material]](https://drive.google.com/file/d/1QmLompRY0WPnF90IDqKkKjOif_DLSyJy/view?usp=sharing)
10 |
11 | **The official repository with Pytorch**
12 |
13 | [](https://github.com/neuralchen/RainNet)
14 | [](https://github.com/neuralchen/RainNet)
15 |
16 | ## Top News
17 |
18 | **`2024-09-08`**: We update the google drive of RainNet [[Google Driver] RainNet_HDF5.zip (13.6G)](https://drive.google.com/file/d/1YE9l7S6NNTCqwsaqXX607vUaLZeFRx8I/view?usp=sharing). We thank [SocialBook](https://socialbook.io/) for providing us with enough shared storage space to continue making this dataset available.
19 |
20 | **`2024-01-21`**: We provide the [[Supplementary Material]](https://drive.google.com/file/d/1QmLompRY0WPnF90IDqKkKjOif_DLSyJy/view?usp=sharing).
21 |
22 | **`2022-11-16`**: The download links are now avaliable: [[Google Driver] RainNet_HDF5.zip (13.6G)](https://drive.google.com/file/d/1cvzT3n9N7o06YhykdakOsboyqwTavkEP/view?usp=sharing) [[Baidu Driver] RainNet_HDF5.zip (13.6G)](https://pan.baidu.com/s/1hXa6Tr089KvBefCJIVQPuQ) [Password: sjtu].
23 |
24 | **`2022-11-16`**: We are working for metric tools and annotation of events.
25 |
26 | ## Download RainNet
27 |
28 | [[Download Via Google Drive] RainNet_HDF5.zip (13.6G)](https://drive.google.com/file/d/1YE9l7S6NNTCqwsaqXX607vUaLZeFRx8I/view?usp=sharing)
29 |
30 | [[Download Via Baidu Drive] RainNet_HDF5.zip (13.6G)](https://pan.baidu.com/s/1hXa6Tr089KvBefCJIVQPuQ)
31 | [password: sjtu]
32 |
33 | ## Resources in Zip:
34 | ***RainNet_HDF5.zip***
35 |
36 | ├ $year$_07.hdf5
37 |
38 | ├ $year$_08.hdf5
39 |
40 | ├ $year$_09.hdf5
41 |
42 | ├ $year$_10.hdf5
43 |
44 | └ $year$_11.hdf5
45 |
46 | ***$year$=2002~2018***
47 | - ***85*** HDF5 files in total;
48 | - ***322GB*** of hard disk space is required to extract the dataset.
49 |
50 | ## Dependencies
51 | - python3.6+
52 | - pytorch1.5+
53 | - torchvision
54 | - h5py
55 | - numpy
56 |
57 | ## Usage
58 | - Data preparation. Run the 'dataset_prepare_hdf5.py' to process the dataset into patches. In 'dataset_prepare_hdf5.py', variable 'dataset_path' sets the hdf5 file path of RainNet; 'patch_hdf5_root' sets the target path to save processed dataset:
59 |
60 | - ```python dataset_prepare_hdf5.py```
61 |
62 | - We provide a example dataloader (pytorch script) to read the processed dataset:
63 |
64 | - ```dataloader_hdf5.py```
65 |
66 | - ***python scripts are archived in fold 'scripts'***
67 |
68 | ## Samples in RainNet
69 |
70 | [](https://github.com/neuralchen/RainNet)
71 |
72 |
73 | ### High Resolution Precipitation Map:
74 |
75 | ### Low Resolution Precipitation Map:
76 |
77 | ### High Resolution Precipitation Map:
78 |
79 | ### Low Resolution Precipitation Map:
80 |
81 | ### High Resolution Precipitation Map:
82 |
83 | ### Low Resolution Precipitation Map:
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 | ## Citation
96 | If you find this Dataset useful in your research, please consider citing:
97 |
98 | ```
99 | @misc{chen2020rainnet,
100 | title={RainNet: A Large-Scale Dataset for Spatial Precipitation Downscaling},
101 | author={Xuanhong Chen and Kairui Feng and Naiyuan Liu and Yifan Lu and Zhengyan Tong and Bingbing Ni and Ziang Liu and Ning Lin},
102 | year={2020},
103 | eprint={2012.09700},
104 | archivePrefix={arXiv},
105 | primaryClass={cs.CV}
106 | }
107 | ```
108 |
109 | ## Contact
110 | Please concat Kairui Feng [email](kairuif@princeton.com), Xuanhong Chen [email](xuanhongchenzju@outlook.com), Naiyuan Liu [email](naiyuan.liu@student.uts.edu.au) and Yifan Lu [email](yifan_lu@sjtu.edu.cn) for questions about the dataset.
111 |
112 | ## Related Projects
113 |
114 | **Please visit ou popular face swapping project**
115 |
116 | [](https://github.com/neuralchen/SimSwap)
117 |
118 | [](https://github.com/neuralchen/SimSwap)
119 |
120 | **Please visit our high-quality style transfer project**
121 |
122 | [](https://github.com/neuralchen/ASMAGAN)
123 |
124 | [](https://github.com/neuralchen/ASMAGAN)
125 |
126 | **Please visit our AAAI2021 sketch based rendering project**
127 |
128 | [](https://github.com/TZYSJTU/Sketch-Generation-with-Drawing-Process-Guided-by-Vector-Flow-and-Grayscale)
129 | [](https://github.com/TZYSJTU/Sketch-Generation-with-Drawing-Process-Guided-by-Vector-Flow-and-Grayscale)
130 |
131 | **Please visit our high resolution face dataset VGGFace2-HQ**
132 |
133 | [](https://github.com/NNNNAI/VGGFace2-HQ)
134 |
135 | Learn about our other projects
136 |
137 | [[VGGFace2-HQ]](https://github.com/NNNNAI/VGGFace2-HQ);
138 |
139 | [[RainNet]](https://neuralchen.github.io/RainNet);
140 |
141 | [[Sketch Generation]](https://github.com/TZYSJTU/Sketch-Generation-with-Drawing-Process-Guided-by-Vector-Flow-and-Grayscale);
142 |
143 | [[CooGAN]](https://github.com/neuralchen/CooGAN);
144 |
145 | [[Knowledge Style Transfer]](https://github.com/AceSix/Knowledge_Transfer);
146 |
147 | [[SimSwap]](https://github.com/neuralchen/SimSwap);
148 |
149 | [[ASMA-GAN]](https://github.com/neuralchen/ASMAGAN);
150 |
151 | [[SNGAN-Projection-pytorch]](https://github.com/neuralchen/SNGAN_Projection)
152 |
153 | [[Pretrained_VGG19]](https://github.com/neuralchen/Pretrained_VGG19).
154 |
--------------------------------------------------------------------------------
/demo/DatasetRainNet.py:
--------------------------------------------------------------------------------
1 | import h5py
2 | import torch.utils.data as data
3 | import numpy as np
4 | import cv2
5 | import random
6 | import torch
7 | from PIL import Image, ImageOps
8 | class RainNetDataset(data.Dataset):
9 | def __init__(self,data_path, is_training=True, crop_size_gt=192, upscale_factor=3, rotation=True, flip=True):
10 | super(RainNetDataset,self).__init__()
11 | (self.highres,self.lowres) = RainNet_from_folder(data_path)
12 | self.len = self.highres.shape[2]
13 | self.is_training = is_training
14 | self.crop_size_gt = crop_size_gt
15 | self.upscale_factor = upscale_factor
16 | self.rotation = rotation
17 | self.flip = flip
18 |
19 | def __getitem__(self,index):
20 | img_hr = self.highres[:,:,index]
21 | img_lr = self.lowres[:,:,index]
22 | img_hr = np.expand_dims(img_hr, -1)
23 | img_lr = np.expand_dims(img_lr, -1)
24 |
25 | # augmentation for training
26 | if self.is_training:
27 | # random crop
28 | img_hr, img_lr = random_crop(img_hr, img_lr, self.crop_size_gt, self.upscale_factor)
29 | # flip, rotation
30 | img_hr, img_lr = augment([img_hr, img_lr], self.flip, self.rotation)
31 | else :
32 | pass
33 | img_hr, img_lr = toTensor([img_hr, img_lr])
34 |
35 | return img_hr, img_lr
36 |
37 | def __len__(self):
38 | return self.len
39 |
40 | def RainNet_from_folder(folder):
41 | h5_path = folder
42 | f = h5py.File(h5_path,'r')
43 | highres = f['highres']
44 | lowres = f['lowres']
45 | return [highres,lowres]
46 |
47 | def random_crop(GT_img, LR_img, GT_crop_size,upscale_factor):
48 |
49 | LR_h, LR_w = LR_img.shape[0],LR_img.shape[1]
50 | LR_crop_size = GT_crop_size//upscale_factor
51 |
52 | ix = np.random.randint(0,LR_h-LR_crop_size-1)
53 | iy = np.random.randint(0,LR_w-LR_crop_size-1)
54 |
55 | GT_img_crop = GT_img[ix:ix+GT_crop_size, iy:iy+GT_crop_size,:]
56 | LR_img_crop = LR_img[ix:ix+LR_crop_size, iy:iy+LR_crop_size,:]
57 |
58 | return GT_img_crop, LR_img_crop
59 |
60 | def augment(imgs, hflip=True, rotation=True):
61 | #print(imgs.shape)
62 | hflip = hflip and random.random() < 0.5
63 | vflip = rotation and random.random() < 0.5
64 | rot = rotation and random.random() < 0.5
65 |
66 | def _augument(img):
67 | if hflip:
68 | cv2.flip(img, 1, img)
69 | if vflip:
70 | cv2.flip(img, 0, img)
71 | if rot:
72 | img = img.transpose(1, 0, 2)
73 |
74 | return img
75 | imgs = [_augument(img) for img in imgs]
76 |
77 | return imgs
78 |
79 | def toTensor(imgs):
80 |
81 | def _totensor(img):
82 | img = torch.from_numpy(img.transpose(2, 0, 1))
83 |
84 | img = img.float()
85 | return img
86 | if isinstance(imgs, list):
87 | return [_totensor(img) for img in imgs]
88 | else:
89 | return _totensor(imgs)
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
--------------------------------------------------------------------------------
/demo/demo.py:
--------------------------------------------------------------------------------
1 |
2 | import torch
3 | from torch.utils.data import DataLoader
4 | import argparse
5 | from DatasetRainNet import RainNetDataset
6 |
7 | parser = argparse.ArgumentParser(description='Demo scipt for loading RainNet dataset')
8 | parser.add_argument('--dataroot', type=str, default='dataset/2018_11.hdf5')
9 | parser.add_argument('--batchsize', type=int, default=4)
10 | parser.add_argument('--upscale_factor', type=int, default=3)
11 | parser.add_argument('--crop_size_gt', type=int, default=192)
12 | parser.add_argument('--threads', type=int, default=8, help='number of threads for data loader to use')
13 |
14 | arg = parser.parse_args()
15 |
16 | train_set = RainNetDataset(arg.dataroot,is_training=True, crop_size_gt=arg.crop_size_gt, upscale_factor=arg.upscale_factor, rotation=True, flip=True)
17 | #val_set = RainNetDataset(arg.dataroot,is_training=False, crop_size_gt=192, upscale_factor=3)
18 |
19 | training_data_loader = DataLoader(dataset=train_set, num_workers=arg.threads, batch_size=arg.batchsize, shuffle=True)
20 | # testing_data_loader = DataLoader(dataset=test_set, num_workers=opt.threads, batch_size=opt.testBatchSize, shuffle=False)
21 |
22 | dataset_len = len(training_data_loader.dataset)
23 | print(dataset_len)
24 |
25 | for idx,batch in enumerate(training_data_loader):
26 | img_gt, img_lr = batch[0], batch[1]
27 | print('The shape of HighRes Images :{}'.format(img_gt.shape))
28 | print('The shape of LowRes Images :{}'.format(img_lr.shape))
29 | break
30 |
31 |
--------------------------------------------------------------------------------
/docs/css/bootstrap-theme.min.css:
--------------------------------------------------------------------------------
1 | /*!
2 | * Bootstrap v3.3.7 (http://getbootstrap.com)
3 | * Copyright 2011-2016 Twitter, Inc.
4 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
5 | */.btn-danger,.btn-default,.btn-info,.btn-primary,.btn-success,.btn-warning{text-shadow:0 -1px 0 rgba(0,0,0,.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075)}.btn-danger.active,.btn-danger:active,.btn-default.active,.btn-default:active,.btn-info.active,.btn-info:active,.btn-primary.active,.btn-primary:active,.btn-success.active,.btn-success:active,.btn-warning.active,.btn-warning:active{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-danger.disabled,.btn-danger[disabled],.btn-default.disabled,.btn-default[disabled],.btn-info.disabled,.btn-info[disabled],.btn-primary.disabled,.btn-primary[disabled],.btn-success.disabled,.btn-success[disabled],.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-danger,fieldset[disabled] .btn-default,fieldset[disabled] .btn-info,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-success,fieldset[disabled] .btn-warning{-webkit-box-shadow:none;box-shadow:none}.btn-danger .badge,.btn-default .badge,.btn-info .badge,.btn-primary .badge,.btn-success .badge,.btn-warning .badge{text-shadow:none}.btn.active,.btn:active{background-image:none}.btn-default{text-shadow:0 1px 0 #fff;background-image:-webkit-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:-o-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e0e0e0));background-image:linear-gradient(to bottom,#fff 0,#e0e0e0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#dbdbdb;border-color:#ccc}.btn-default:focus,.btn-default:hover{background-color:#e0e0e0;background-position:0 -15px}.btn-default.active,.btn-default:active{background-color:#e0e0e0;border-color:#dbdbdb}.btn-default.disabled,.btn-default.disabled.active,.btn-default.disabled.focus,.btn-default.disabled:active,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled],.btn-default[disabled].active,.btn-default[disabled].focus,.btn-default[disabled]:active,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default,fieldset[disabled] .btn-default.active,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:active,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#e0e0e0;background-image:none}.btn-primary{background-image:-webkit-linear-gradient(top,#337ab7 0,#265a88 100%);background-image:-o-linear-gradient(top,#337ab7 0,#265a88 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#265a88));background-image:linear-gradient(to bottom,#337ab7 0,#265a88 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#245580}.btn-primary:focus,.btn-primary:hover{background-color:#265a88;background-position:0 -15px}.btn-primary.active,.btn-primary:active{background-color:#265a88;border-color:#245580}.btn-primary.disabled,.btn-primary.disabled.active,.btn-primary.disabled.focus,.btn-primary.disabled:active,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled],.btn-primary[disabled].active,.btn-primary[disabled].focus,.btn-primary[disabled]:active,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-primary.active,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:active,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#265a88;background-image:none}.btn-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:-o-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5cb85c),to(#419641));background-image:linear-gradient(to bottom,#5cb85c 0,#419641 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#3e8f3e}.btn-success:focus,.btn-success:hover{background-color:#419641;background-position:0 -15px}.btn-success.active,.btn-success:active{background-color:#419641;border-color:#3e8f3e}.btn-success.disabled,.btn-success.disabled.active,.btn-success.disabled.focus,.btn-success.disabled:active,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled],.btn-success[disabled].active,.btn-success[disabled].focus,.btn-success[disabled]:active,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success,fieldset[disabled] .btn-success.active,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:active,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{background-color:#419641;background-image:none}.btn-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:-o-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5bc0de),to(#2aabd2));background-image:linear-gradient(to bottom,#5bc0de 0,#2aabd2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#28a4c9}.btn-info:focus,.btn-info:hover{background-color:#2aabd2;background-position:0 -15px}.btn-info.active,.btn-info:active{background-color:#2aabd2;border-color:#28a4c9}.btn-info.disabled,.btn-info.disabled.active,.btn-info.disabled.focus,.btn-info.disabled:active,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled],.btn-info[disabled].active,.btn-info[disabled].focus,.btn-info[disabled]:active,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info,fieldset[disabled] .btn-info.active,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:active,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{background-color:#2aabd2;background-image:none}.btn-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:-o-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f0ad4e),to(#eb9316));background-image:linear-gradient(to bottom,#f0ad4e 0,#eb9316 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#e38d13}.btn-warning:focus,.btn-warning:hover{background-color:#eb9316;background-position:0 -15px}.btn-warning.active,.btn-warning:active{background-color:#eb9316;border-color:#e38d13}.btn-warning.disabled,.btn-warning.disabled.active,.btn-warning.disabled.focus,.btn-warning.disabled:active,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled],.btn-warning[disabled].active,.btn-warning[disabled].focus,.btn-warning[disabled]:active,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning,fieldset[disabled] .btn-warning.active,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:active,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{background-color:#eb9316;background-image:none}.btn-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c12e2a 100%);background-image:-o-linear-gradient(top,#d9534f 0,#c12e2a 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9534f),to(#c12e2a));background-image:linear-gradient(to bottom,#d9534f 0,#c12e2a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#b92c28}.btn-danger:focus,.btn-danger:hover{background-color:#c12e2a;background-position:0 -15px}.btn-danger.active,.btn-danger:active{background-color:#c12e2a;border-color:#b92c28}.btn-danger.disabled,.btn-danger.disabled.active,.btn-danger.disabled.focus,.btn-danger.disabled:active,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled],.btn-danger[disabled].active,.btn-danger[disabled].focus,.btn-danger[disabled]:active,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger,fieldset[disabled] .btn-danger.active,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:active,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#c12e2a;background-image:none}.img-thumbnail,.thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{background-color:#e8e8e8;background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-o-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#e8e8e8));background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);background-repeat:repeat-x}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{background-color:#2e6da4;background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}.navbar-default{background-image:-webkit-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:-o-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#f8f8f8));background-image:linear-gradient(to bottom,#fff 0,#f8f8f8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-radius:4px;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075)}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.open>a{background-image:-webkit-linear-gradient(top,#dbdbdb 0,#e2e2e2 100%);background-image:-o-linear-gradient(top,#dbdbdb 0,#e2e2e2 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dbdbdb),to(#e2e2e2));background-image:linear-gradient(to bottom,#dbdbdb 0,#e2e2e2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);background-repeat:repeat-x;-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.075);box-shadow:inset 0 3px 9px rgba(0,0,0,.075)}.navbar-brand,.navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,.25)}.navbar-inverse{background-image:-webkit-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:-o-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#3c3c3c),to(#222));background-image:linear-gradient(to bottom,#3c3c3c 0,#222 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-radius:4px}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.open>a{background-image:-webkit-linear-gradient(top,#080808 0,#0f0f0f 100%);background-image:-o-linear-gradient(top,#080808 0,#0f0f0f 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#080808),to(#0f0f0f));background-image:linear-gradient(to bottom,#080808 0,#0f0f0f 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);background-repeat:repeat-x;-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.25);box-shadow:inset 0 3px 9px rgba(0,0,0,.25)}.navbar-inverse .navbar-brand,.navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,.25)}.navbar-fixed-bottom,.navbar-fixed-top,.navbar-static-top{border-radius:0}@media (max-width:767px){.navbar .navbar-nav .open .dropdown-menu>.active>a,.navbar .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}}.alert{text-shadow:0 1px 0 rgba(255,255,255,.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05)}.alert-success{background-image:-webkit-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-o-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dff0d8),to(#c8e5bc));background-image:linear-gradient(to bottom,#dff0d8 0,#c8e5bc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);background-repeat:repeat-x;border-color:#b2dba1}.alert-info{background-image:-webkit-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:-o-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9edf7),to(#b9def0));background-image:linear-gradient(to bottom,#d9edf7 0,#b9def0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);background-repeat:repeat-x;border-color:#9acfea}.alert-warning{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:-o-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fcf8e3),to(#f8efc0));background-image:linear-gradient(to bottom,#fcf8e3 0,#f8efc0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);background-repeat:repeat-x;border-color:#f5e79e}.alert-danger{background-image:-webkit-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:-o-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f2dede),to(#e7c3c3));background-image:linear-gradient(to bottom,#f2dede 0,#e7c3c3 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);background-repeat:repeat-x;border-color:#dca7a7}.progress{background-image:-webkit-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:-o-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#f5f5f5));background-image:linear-gradient(to bottom,#ebebeb 0,#f5f5f5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);background-repeat:repeat-x}.progress-bar{background-image:-webkit-linear-gradient(top,#337ab7 0,#286090 100%);background-image:-o-linear-gradient(top,#337ab7 0,#286090 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#286090));background-image:linear-gradient(to bottom,#337ab7 0,#286090 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0);background-repeat:repeat-x}.progress-bar-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:-o-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5cb85c),to(#449d44));background-image:linear-gradient(to bottom,#5cb85c 0,#449d44 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);background-repeat:repeat-x}.progress-bar-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:-o-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5bc0de),to(#31b0d5));background-image:linear-gradient(to bottom,#5bc0de 0,#31b0d5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);background-repeat:repeat-x}.progress-bar-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:-o-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f0ad4e),to(#ec971f));background-image:linear-gradient(to bottom,#f0ad4e 0,#ec971f 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);background-repeat:repeat-x}.progress-bar-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:-o-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9534f),to(#c9302c));background-image:linear-gradient(to bottom,#d9534f 0,#c9302c 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);background-repeat:repeat-x}.progress-bar-striped{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.list-group{border-radius:4px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{text-shadow:0 -1px 0 #286090;background-image:-webkit-linear-gradient(top,#337ab7 0,#2b669a 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2b669a 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2b669a));background-image:linear-gradient(to bottom,#337ab7 0,#2b669a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0);background-repeat:repeat-x;border-color:#2b669a}.list-group-item.active .badge,.list-group-item.active:focus .badge,.list-group-item.active:hover .badge{text-shadow:none}.panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.panel-default>.panel-heading{background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-o-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#e8e8e8));background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);background-repeat:repeat-x}.panel-primary>.panel-heading{background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}.panel-success>.panel-heading{background-image:-webkit-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:-o-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dff0d8),to(#d0e9c6));background-image:linear-gradient(to bottom,#dff0d8 0,#d0e9c6 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);background-repeat:repeat-x}.panel-info>.panel-heading{background-image:-webkit-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:-o-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9edf7),to(#c4e3f3));background-image:linear-gradient(to bottom,#d9edf7 0,#c4e3f3 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);background-repeat:repeat-x}.panel-warning>.panel-heading{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:-o-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fcf8e3),to(#faf2cc));background-image:linear-gradient(to bottom,#fcf8e3 0,#faf2cc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);background-repeat:repeat-x}.panel-danger>.panel-heading{background-image:-webkit-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:-o-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f2dede),to(#ebcccc));background-image:linear-gradient(to bottom,#f2dede 0,#ebcccc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);background-repeat:repeat-x}.well{background-image:-webkit-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:-o-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#e8e8e8),to(#f5f5f5));background-image:linear-gradient(to bottom,#e8e8e8 0,#f5f5f5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);background-repeat:repeat-x;border-color:#dcdcdc;-webkit-box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1)}
6 | /*# sourceMappingURL=bootstrap-theme.min.css.map */
--------------------------------------------------------------------------------
/docs/css/ie10-viewport-bug-workaround.css:
--------------------------------------------------------------------------------
1 | /*!
2 | * IE10 viewport hack for Surface/desktop Windows 8 bug
3 | * Copyright 2014-2015 Twitter, Inc.
4 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
5 | */
6 |
7 | /*
8 | * See the Getting Started docs for more information:
9 | * http://getbootstrap.com/getting-started/#support-ie10-width
10 | */
11 | @-ms-viewport { width: device-width; }
12 | @-o-viewport { width: device-width; }
13 | @viewport { width: device-width; }
14 |
--------------------------------------------------------------------------------
/docs/css/jumbotron.css:
--------------------------------------------------------------------------------
1 | /* Move down content because we have a fixed navbar that is 50px tall */
2 | body {
3 | padding-top: 50px;
4 | padding-bottom: 20px;
5 | }
6 |
--------------------------------------------------------------------------------
/docs/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/favicon.ico
--------------------------------------------------------------------------------
/docs/fonts/glyphicons-halflings-regular.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/fonts/glyphicons-halflings-regular.eot
--------------------------------------------------------------------------------
/docs/fonts/glyphicons-halflings-regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/fonts/glyphicons-halflings-regular.ttf
--------------------------------------------------------------------------------
/docs/fonts/glyphicons-halflings-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/fonts/glyphicons-halflings-regular.woff
--------------------------------------------------------------------------------
/docs/fonts/glyphicons-halflings-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/fonts/glyphicons-halflings-regular.woff2
--------------------------------------------------------------------------------
/docs/img/1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/img/1.png
--------------------------------------------------------------------------------
/docs/img/2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/img/2.png
--------------------------------------------------------------------------------
/docs/img/HRGT_201009539_201009571.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/img/HRGT_201009539_201009571.webp
--------------------------------------------------------------------------------
/docs/img/HRGT_201010607_201010639.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/img/HRGT_201010607_201010639.webp
--------------------------------------------------------------------------------
/docs/img/HRGT_201011587_201011619.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/img/HRGT_201011587_201011619.webp
--------------------------------------------------------------------------------
/docs/img/HRGT_201108607_201108655.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/img/HRGT_201108607_201108655.webp
--------------------------------------------------------------------------------
/docs/img/HRGT_201109091_201109123.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/img/HRGT_201109091_201109123.webp
--------------------------------------------------------------------------------
/docs/img/HRGT_201110059_201110091.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/img/HRGT_201110059_201110091.webp
--------------------------------------------------------------------------------
/docs/img/LRGT_201009539_201009571.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/img/LRGT_201009539_201009571.webp
--------------------------------------------------------------------------------
/docs/img/LRGT_201010607_201010639.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/img/LRGT_201010607_201010639.webp
--------------------------------------------------------------------------------
/docs/img/LRGT_201011587_201011619.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/img/LRGT_201011587_201011619.webp
--------------------------------------------------------------------------------
/docs/img/LRGT_201108607_201108655.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/img/LRGT_201108607_201108655.webp
--------------------------------------------------------------------------------
/docs/img/LRGT_201109091_201109123.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/img/LRGT_201109091_201109123.webp
--------------------------------------------------------------------------------
/docs/img/LRGT_201110059_201110091.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/img/LRGT_201110059_201110091.webp
--------------------------------------------------------------------------------
/docs/img/girl2-RGB.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/img/girl2-RGB.png
--------------------------------------------------------------------------------
/docs/img/girl2.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/img/girl2.gif
--------------------------------------------------------------------------------
/docs/img/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/img/logo.png
--------------------------------------------------------------------------------
/docs/img/logo1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/img/logo1.png
--------------------------------------------------------------------------------
/docs/img/new.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/img/new.gif
--------------------------------------------------------------------------------
/docs/img/region.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/img/region.png
--------------------------------------------------------------------------------
/docs/img/results1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/img/results1.PNG
--------------------------------------------------------------------------------
/docs/img/title.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/img/title.png
--------------------------------------------------------------------------------
/docs/img/university.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/img/university.png
--------------------------------------------------------------------------------
/docs/img/vggface2_hq_compare.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuralchen/RainNet/e44eb907e5db146c4714d5675e3e7cb22ea9d3f9/docs/img/vggface2_hq_compare.png
--------------------------------------------------------------------------------
/docs/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
129 | AI-for-science approaches have been applied to solve scientific problems (e.g., nuclear fusion, ecology, genomics, meteorology) and have achieved highly promising results.
130 | Spatial precipitation downscaling is one of the most important meteorological issues and urgently requires the participation of AI.
131 | However, the lack of a well-organized and annotated large-scale dataset hinders the training and verification of more effective and advancing deep-learning models for precipitation downscaling.
132 | To alleviate these obstacles, we present the first large-scale spatial precipitation downscaling dataset named RainNet, which contains more than 62,400 pairs of high-quality low/high-resolution precipitation maps for over 17 years,
133 | ready to help the evolution of deep learning models in precipitation downscaling.
134 | Specifically, the precipitation maps carefully collected in RainNet cover various meteorological phenomena (e.g., hurricane, squall), which is of great help to improve the model generalization ability.
135 | In addition, the map pairs in RainNet are organized in the form of image sequences (720 maps per month or 1 map/hour), showing complex physical properties, e.g., temporal misalignment, temporal sparse, and fluid properties.
136 | Two deep-learning-oriented metrics are specifically introduced to evaluate or verify the comprehensive performance of the trained model, (e.g., prediction maps reconstruction accuracy).
137 | To illustrate the applications of RainNet, 14 state-of-the-art models, including deep models and traditional approaches, are evaluated.
138 | To fully explore potential downscaling solutions, we propose an implicit physical estimation benchmark framework to learn the above characteristics.
139 | Extensive experiments demonstrate the value of RainNet in training and evaluating downscaling models.
140 |
141 |
248 | @misc{chen2020rainnet,
249 | title={RainNet: A Large-Scale Dataset for Spatial Precipitation Downscaling},
250 | author={Xuanhong Chen and Kairui Feng and Naiyuan Liu and Yifan Lu and Zhengyan Tong and Bingbing Ni and Ziang Liu and Ning Lin},
251 | year={2020},
252 | eprint={2012.09700},
253 | archivePrefix={arXiv},
254 | primaryClass={cs.CV}
255 | }
256 |
257 |
258 |
259 |
260 |
261 |
262 |
263 |
264 |
265 |
Contact
266 |
267 |
268 |
269 |
270 |
Please concat Kairui Feng kairuif@princeton.com,
271 | Xuanhong Chen xuanhongchenzju@outlook.com,
272 | Naiyuan Liu naiyuan.liu@student.uts.edu.au and
273 | Yifan Lu yifan_lu@sjtu.edu.cn
274 | for questions about the dataset.