卫星图像的图像处理

时间:2010-01-29 12:57:33

标签: image satellite

是否有可能通过使用C,C ++,Java等计算机语言来分析卫星图像以发现降雨的可能性,水体,森林地区,荒地等湿润景观?哪些是最好的?这很复杂吗?

使用高级C,C ++,Java版本还有其他选项来执行此项目吗?这些语言是否具有读取像素值的特殊功能,而无需使用MATLAB,LABVIEW等工具

4 个答案:

答案 0 :(得分:6)

alt text http://xs.to/thumb-1F0D_4B62DE2C.jpg alt text http://xs.to/thumb-0C7F_4B62DFCB.jpg

如果我没记错的话,“Digital Image Processing 3rd Edition”一书中有一节关于土地质量分析。另请查看“C中的数字图像处理”,您可以下载here

IIRC和this NASA page seems to confirm,我不是物理学家,你需要具有完整(不仅仅是可见)电磁波谱的卫星图像。这可以让你挑选水,植物等。

  

Landsat 7图像是彩色复合材料,   通过分配三个主要的   增强的三个色带的颜色   专题Mapper(ETM +)传感器。这些   它们不是彩色照片   是“假色”图像(绿色字段   不一定看起来很绿   图像)。

Landat乐队将提供帮助:

1沿海水图,土壤/植被识别,森林分类, 人造特征识别
2植被歧视与健康监测,人为特征识别 3植物种类鉴定,人造特征鉴定
4土壤水分监测,植被监测,水体歧视
5植被含水量监测
6地表温度,植被应力监测,土壤水分监测, 云分化,火山监测 7矿物和岩石歧视,植被含水量

有关详细信息,请参阅:Lillesand,T。和Kiefer,R.,1994。遥感和图像解释。 John Wiley and Sons,Inc.,New York,p。 468.

您可能还想创建图像的3D浮雕,并尝试将光谱数据与山谷,可能是河流点,沿海地区等相关联。简而言之,有数据通过图像分析进行估算

答案 1 :(得分:3)

纹理运算符可以区分卫星图像中的地理区域。这是来自Robert Haralick的paper,描述了识别水体,草地区,大都市区等的经典纹理算子。

我在开源Orfeo工具箱上取得了一些成功,这是一个基于ITK的C ++图像处理库,但专门用于卫星图像。您可以在文档here中看到纹理运算符的一些实现示例。

Pre-texture Post-texture

答案 2 :(得分:1)

我建议使用python作为语言,在我的经验中,它更加用户友好,并且有越来越多的python模块用于处理遥感数据。此外,python是开源的,所以你可以避免使用MATLAB等。

RSGISLib软件具有python绑定功能,是处理遥感数据的理想选择。我在整个博士期间都使用过它。可在此处找到该软件http://www.rsgislib.org,可在此处找到展示其应用程序的精彩博客https://spectraldifferences.wordpress.com

我有地理背景,但能够轻松使用python。在我看来,C ++和JAVA等更复杂,因为python经常有模块可以为你做一些棘手的工作(访问图像,检查预测等)。

答案 3 :(得分:0)

帕尼瓦尼的答案是一个良好的开端 - 只要他建议纹理分析。 Imagemagick通常不用于纹理分析,但它绝对是一个可行的工具。看看这个:

$ cat get_images.sh 
#!/bin/bash

base_url='http://maps.googleapis.com/maps/api/staticmap?center='
other_params='&zoom=12&size=400x400&maptype=satellite&sensor=false'

curl -o desert1.png   "$base_url"'41.660000,112.900000'"$other_params" 2>/dev/null
curl -o desert2.png   "$base_url"'40.660000,112.900000'"$other_params" 2>/dev/null
curl -o rural1.png    "$base_url"'40.714728,-74.400000'"$other_params" 2>/dev/null
curl -o rural2.png    "$base_url"'41.714728,-74.400000'"$other_params" 2>/dev/null
curl -o suburban1.png "$base_url"'40.614728,-74.300000'"$other_params" 2>/dev/null
curl -o suburban2.png "$base_url"'40.714728,-74.200000'"$other_params" 2>/dev/null
curl -o urban1.png    "$base_url"'40.744728,-73.831672'"$other_params" 2>/dev/null
curl -o urban2.png    "$base_url"'40.754728,-73.930672'"$other_params" 2>/dev/null

echo -e "\nEntropy:"
for t in "desert1" "desert2" "rural1" "rural2" "suburban1" "suburban2" "urban1" "urban2"; do 
  echo -e "  " $t "\t" `./entropy "$t".png | grep Aver | sed -e 's/.*= //'`
done

echo -e "\nStd Dev:"
for t in "desert1" "desert2" "rural1" "rural2" "suburban1" "suburban2" "urban1" "urban2"; do 
  echo -e "  " $t "\t" `convert "$t".png -format '%[fx:standard_deviation]' info:`
done

echo -e "\nRatio of hi freq to low freq:"
for t in "desert1" "desert2" "rural1" "rural2" "suburban1" "suburban2" "urban1" "urban2"; do 
  convert "$t".png -fft +depth +adjoin "$t"_fft_%d.png
  convert "$t"_fft_1.png -fill none -stroke black -strokewidth 100 -draw "rectangle 50,50,350,350" "$t"_fft_1b.png
  convert "$t"_fft_1.png -fill none -stroke black -strokewidth 100 -draw "rectangle 150,150,250,250" "$t"_fft_1c.png
  lo=`./entropy "$t"_fft_1b.png | grep Average | sed -e 's/.*= //'`
  hi=`./entropy "$t"_fft_1c.png | grep Average | sed -e 's/.*= //'`
  echo -e "  " $t "\t" `echo "scale=8; $lo / $hi" | bc`
done

$ ./get_images.sh 

Entropy:
   desert1   0.557244
   desert2   0.586651
   rural1    0.652486
   rural2    0.709812
   suburban1 0.69883
   suburban2 0.727527
   urban1    0.746479
   urban2    0.765279

Std Dev:
   desert1   0.0756219
   desert2   0.0881424
   rural1    0.107279
   rural2    0.140878
   suburban1 0.125647
   suburban2 0.143765
   urban1    0.150628
   urban2    0.185245

Ratio of hi freq to low freq:
   desert1    .41319501
   desert2    .41337079
   rural1     .41333309
   rural2     .41335422
   suburban1  .41326120
   suburban2  .41339882
   urban1     .41327271
   urban2     .41326168

这三个不同的指标(图像熵,图像标准偏差,图像中的高频率与低频率内容的比率)各自与从沙漠到乡村到郊区到城市的频谱正好相关。如果你将这些放入分类器(例如神经网络)中,我敢打赌你可以开发一个关于谷地图卫星图像是沙漠,乡村,郊区还是城市土地的合适预测器。