Dstl Satellite Imagery Feature Detection-Data Processing Tutorial
如何读取WKT格式文件
我们找到了这些有用的包:
Python - shapely.loads()
R - rgeos
如何读取geojson格式文件
我们找到了这些有用的包:
Python - json, geojson, shapely (使用json,然后将其转换成shapely的复杂多边形
)
R - geojsonio
如何将几何投影到像素坐标
在我们提供的数据集中,我们创建了一组地理坐标,它们在x = [0,1]和y = [-1.0]的范围内。 这些坐标被变换,使得我们模糊卫星图像被拍摄的位置。 图像来自地球上相同的区域。
为了利用这些图像,我们提供每个图像的网格坐标,以便您知道如何缩放它们并将它们与像素的图像对齐。 在grid_sizes.csv中,给出每个imageId的Xmax和Ymin值。
对于每个图像,您应该能够从图像栅格获取宽度(W)和高度(H)。 对于3391 x 3349 x 3的3波段图像,W为3349,H为3391.然后可以按如下方式缩放数据:
如何将的你结果转为多边形
最好使用cascaded_union()将多边形列表展开为不重叠的多边形。
缩放结果回到原来的坐标:
然后就很容易使用shapely来输出多边形到wtk格式文件:mulitpoly.wkt
如何在Python中打开GeoTiff文件
GDAL功能强大但有点难安装。如果你想去用它读取栅格文件,tifffile是一个轻量的打开GeoTiff文件的包。
例如,下面的代码你能读取16波段的图像:
import gdal
from gdalconst import * img_filename_16bandA = 'data/16band/6100_1_3_A.tif'
img_filename_16bandM = 'data/16band/6100_1_3_M.tif'
img_filename_16bandP = 'data/16band/6100_1_3_P.tif' datasetA = gdal.Open(img_filename_16bandA, GA_ReadOnly )
datasetM = gdal.Open(img_filename_16bandM, GA_ReadOnly )
datasetP = gdal.Open(img_filename_16bandP, GA_ReadOnly ) print 'Size is ',datasetA.RasterXSize,'x',datasetA.RasterYSize, \
'x',datasetA.RasterCount
print 'Size is ',datasetM.RasterXSize,'x',datasetM.RasterYSize, \
'x',datasetM.RasterCount
print 'Size is ',datasetP.RasterXSize,'x',datasetP.RasterYSize, \
'x',datasetP.RasterCount
输出:
Size is 136 x 134 x 8
Size is 848 x 837 x 8
Size is 3391 x 3348 x 1
或者你能属于tiffffile:
import tifffile as tiff
P = tiff.imread(img_filename_16bandP)
tiff.imshow(P)
打如何在R中打开Geo Tiff文件
感谢社区成员smota的提出:
library(raster)
raster_6044_4_4 <- raster("./data/three_band/6040_4_4.tif")
plot(raster_6044_4_4)
library(rgdal)
gdal_6044_4_4 <- readGDAL(paste0("./data/three_band/", '6040_4_4', ".tif"))
plot(gdal_6044_4_4)
处理图像:
devtools::install_github("ropensci/geojsonio")
library("geojsonio")
install.packages("rgdal", type = "source")
install.packages("rgeos", type = "source")
library("rgdal")
library("rgeos")
library(ggplot2)
grid_6010_4_4 <-geojson_read("./data/train_geojson/train_geojson/6010_4_4/Grid_6010.geojson", method = local, what= 'sp')
plot(grid_6010_4_4)
ggplot(grid_6010_4_4, aes(long, lat, group = group)) + geom_polygon()
获得Docker?
这个dockerfile应该能对Python使用者有帮助。
---本文译自:https://www.kaggle.com/c/dstl-satellite-imagery-feature-detection/details/data-processing-tutorial
Dstl Satellite Imagery Feature Detection-Data Processing Tutorial的更多相关文章
- pytorch例子学习-DATA LOADING AND PROCESSING TUTORIAL
参考:https://pytorch.org/tutorials/beginner/data_loading_tutorial.html DATA LOADING AND PROCESSING TUT ...
- Image Processing and Analysis_8_Edge Detection:Design of steerable filters for feature detection using canny-like criteria ——2004
此主要讨论图像处理与分析.虽然计算机视觉部分的有些内容比如特 征提取等也可以归结到图像分析中来,但鉴于它们与计算机视觉的紧密联系,以 及它们的出处,没有把它们纳入到图像处理与分析中来.同样,这里面也有 ...
- Image Processing and Analysis_21_Scale Space:Feature Detection with Automatic Scale Selection——1998
此主要讨论图像处理与分析.虽然计算机视觉部分的有些内容比如特 征提取等也可以归结到图像分析中来,但鉴于它们与计算机视觉的紧密联系,以 及它们的出处,没有把它们纳入到图像处理与分析中来.同样,这里面也有 ...
- Image Processing and Computer Vision_Review:A survey of recent advances in visual feature detection(Author's Accepted Manuscript)——2014.08
翻译 一项关于视觉特征检测的最新进展概述(作者已被接受的手稿) 和A survey of recent advances in visual feature detection——2014.08内容相 ...
- Linux command line exercises for NGS data processing
by Umer Zeeshan Ijaz The purpose of this tutorial is to introduce students to the frequently used to ...
- Chrysler -- CCD (Chrysler Collision Detection) Data Bus
http://articles.mopar1973man.com/general-cummins/34-engine-system/81-ccd-data-bus CCD (Chrysler Coll ...
- [翻译]MapReduce: Simplified Data Processing on Large Clusters
MapReduce: Simplified Data Processing on Large Clusters MapReduce:面向大型集群的简化数据处理 摘要 MapReduce既是一种编程模型 ...
- Spring Data JPA Tutorial Part Nine: Conclusions(未翻译)
This is the ninth and the last part of my Spring Data JPA tutorial. Now it is time to take a look of ...
- SQL Server Reporting Services 自定义数据处理扩展DPE(Data Processing Extension)
最近在做SSRS项目时,遇到这么一个情形:该项目有多个数据库,每个数据库都在不同的服务器,但每个数据库所拥有的数据库对象(table/view/SPs/functions)都是一模一样的,后来结合网络 ...
随机推荐
- How to make a simplest WCF service work on Win7 with VS2010
You know as a beginner to learn WCF, the first thing is to make a simplest WCF service work like a c ...
- 一个基于JRTPLIB的轻量级RTSP客户端(myRTSPClient)——实现篇:(四)用户接口层之处理SDP报文
当RTSP客户端向RTSP服务端发送DESCRIBE命令时,服务端理应当回复一条SDP报文. 该SDP报文中包含RTSP服务端的基本信息.所能提供的音视频媒体类型以及相应的负载能力,以下是一段SDP示 ...
- HTML进阶
HTML表单 form标签 <form> 标签代表一个表单,表单用于向服务器传输数据. 标签能够包含 <input> ,可以是文本字段,复选框,单选框或提交按钮等.还可以包含& ...
- Nginx入门案例(Mac版)
Nginx(engine x)是一个轻量级.高性能的Web和反向代理服务器,也是一个IMAP.POP3和SMTP服务器,并且安装十分简单,配置文件非常简洁,启动特别容易,运行十分稳定,几乎可以做到7* ...
- 使用build_opener 自定义 opener
使用build_opener 自定义 opener,这种方法的好处是可以方便的拓展功能. import urllib.request import http.cookiejar def makeMyO ...
- python基础教程(六)
学到这里已经很不耐烦了,前面的数据结构什么的看起来都挺好,但还是没法用它们做什么实际的事.从这一章节开始有点难度,需要好好理解. 基本语句的更多用法 使用逗号输出 >>> print ...
- 解决:"不再sudoers文件中,此事将不做被报告”的问题
使用sudo出现问题:不再sudoers文件中,此事将不做被报告 系统:win8.1 +cents 7 问题:在虚拟机中,默认不是root账号,在使用sudo命令时候收到下面警告: sudo命令含义: ...
- java 得到以后的日期
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt222 import java.text.ParseException; im ...
- 短视频 SDK 功能点技术实现方式详解
第三方短视频解决方案作为快速切入短视频行业的首选方式,选择一款功能齐全.性能优异的短视频解决方案十分重要. 今天我们来谈谈短视频 SDK 6大重要功能点及其技术实现方式. 短视频拍摄 断点续拍 指在拍 ...
- 常用按钮css
#openwx_btn { border: 0px; background-color: rgb(145, ...