arcgis裁剪后的图像在ENVI中打开显示是白块是怎么回事啊?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了arcgis裁剪后的图像在ENVI中打开显示是白块是怎么回事啊?相关的知识,希望对你有一定的参考价值。

我前几天用DEM做数据镶嵌的时候广东省那一块也出现了这个问题,后面讨论了下我们觉得是因为我们拿到的DEM数据海洋区域是没有数据的,可能是因为这个原因导致了这个问题,如果你想在Envi里面查看的话你可以稍微图像增强一下,而且我感觉是不影响数据处理的 参考技术A 在将arcgis中裁切过的影像转化为tif格式后,出现了在envi4.5中无法显示灰度的问题。几经周折,发现:在输出数据时,output raster内容中要选择use Renderer(不选的话,data数据也无错误,但ENVI显示为白色)。

参考资料:http://blog.csdn.net/lynnbz/article/details/4459597 试过了 可用

使用 laravel 将裁剪后的图像保存在 public/uploads 文件夹中

【中文标题】使用 laravel 将裁剪后的图像保存在 public/uploads 文件夹中【英文标题】:Save cropped image in the public/uploads folder with laravel 【发布时间】:2019-08-05 13:17:13 【问题描述】:

我正在尝试将裁剪的图像上传到 laravel 中的 public/uploads 文件夹。 我能够将图像路径保存到数据库,但我无法将裁剪后的图像保存到 public/uploads 文件夹。

这就是我的代码的样子:

 $slideshow = \App\Slideshow::find($id);
        //This is the path to the image that's in the database.
        $pieces = explode("/", $slideshow->image);
        $image = $pieces[0]. "/public/". $pieces[1]. "/". $pieces[2];
        $new_image = $pieces[0]. "/public/". $pieces[1]. "/". $pieces[2];
        $image_quality = '95';
        list( $current_width, $current_height ) = getimagesize($new_image);


        //This is the data that gets send from the blade form
        $x1 = $request->input('x1');
        $y1 = $request->input('y1');
        $x2 = $request->input('x2');
        $y2 = $request->input('y2');
        $width = $request->input('width');
        $height = $request->input('height');

        //This function is cropping the image
        $crop_width = 50; 
        $crop_height = 50;
        $new = imagecreatetruecolor( $crop_width, $crop_height );
        $current_image = imagecreatefromjpeg( $new_image );
        imagecopyresampled( $new, $current_image, 0, 0, $x1, $y1, $crop_width, $crop_height, $width, $height );
        imagejpeg( $new, $new_image, $image_quality );
        $final_image = imagejpeg( $new, $new_image, $image_quality );

            if($final_image == true) 
                $image = 'uploads/' . $image['image'];
                $final_image = 'uploads/crop_'. $pieces[2];
                $destination = '../uploads/';
                $complete = $destination.$final_image;

                $slideshow->cropped_image = $complete;
                $slideshow->save();

                Storage::copy($image, $final_image);
                dd(Storage::copy($image, $final_image));

                return redirect()->back();
             else 
                dd('Doesn't work');
            

在裁剪功能之后,我尝试将裁剪后的图像放入变量中,然后将图像放入 public/uploads 文件夹中。

【问题讨论】:

欢迎来到 Stack Overflow! :) 我认为this question 可能有一些对您有所帮助的答案。我相信 Laravel 的 Storage 门面默认将文件存储在 storage/app 目录中。 【参考方案1】:

我真的建议使用图像干预包,它在此类实现中非常方便和干净。

安装见here,非常简单。

然后进行裁剪,您可以轻松使用包的crop 功能:

<?php 

    $originalImagePath = '//your_image_path'
    $x = $request->input('x');
    $y = $request->input('y');
    $width = $request->input('width');
    $height = $request->input('height');

    $croppedImage = Image::make($originalImagePath);              
    $croppedImage->crop($width, $height, $x, $y);
    $croppedImage->save('//new_path_here');

【讨论】:

以上是关于arcgis裁剪后的图像在ENVI中打开显示是白块是怎么回事啊?的主要内容,如果未能解决你的问题,请参考以下文章

envi里经过波段计算机计算后的数据在arcgis范围变了

如何用ENVI和ARCGIS切割出图像的制定区域

我用envi种处理的影像,转换为tiff影像在arcgis中打开,值域变了?

你好 我用ARCGIS裁剪了TM影像之后 保存为tif格式 但是在ENVI中打开后 范围线里面的区域都是黑色的 求解

在ENVI里处理完影像,计算完NDVI,转成tif在arcgis里打开值域不是1到-1

请问为啥arcgis纠正后的图像是黑色的呢?