当前位置: 首页 > news >正文

加强政协机关网站建设创建建站

加强政协机关网站建设,创建建站,网络营销的建议方案,在小型网站建设小组中答案效果: Video: 区域增加分割 1、itkThresholdImageFilter 该类的主要功能是通过设置低阈值、高阈值或介于高低阈值之间,则将图像值输出为用户指定的值。 如果图像值低于、高于或介于设置的阈值之间,该类就将图像值设置为用户指定的“外部”值…

效果:

Video:

区域增加分割

1、itkThresholdImageFilter

该类的主要功能是通过设置低阈值、高阈值或介于高低阈值之间,则将图像值输出为用户指定的值。

如果图像值低于、高于或介于设置的阈值之间,该类就将图像值设置为用户指定的“外部”值(默认情况下为“黑色”)。

该类并不对像素进行二值化处理,输出图像中的像素值可以是浮点型或整型。

常用的成员函数:

    Set/GetLower():设置/获取下限阈值Set/GetUpper():设置/获取上限阈值Set/GetOutsideValue():设置/获取“外部”像素值ThresholdAbove():将大于或等于该阈值的值设置为OutsideValueThresholdBelow():将小于或等于该阈值的值设置为OutsideValueThresholdOutside():将超出上下限阈值范围的值设置为 OutsideValue

 Example:

#include "itkImage.h"
#include "itkThresholdImageFilter.h";using namespace itk;const unsigned int  Dimension = 3;       //数据的Dimension
typedef signed short shortPixelType;
typedef itk::Image<shortPixelType, Dimension> ShortImageType;//图像进行阈值分割处理
bool thresholdImage(ShortImageType* image, ShortImageType* outImage)
{const short lowerThr = 200;      //设置下阈值const short upperThr = 1000;   //设置上阈值short outsideValue = 0; typedef ThresholdImageFilter<ShortImageType> thresholdFilterType;typename thresholdFilterType::Pointer thresholder = thresholdFilterType::New();thresholder->SetInput(image);thresholder->SetOutsideValue(outsideValue);设置上下阈值//thresholder->SetLower(lowerThr);//thresholder->SetUpper(upperThr);//<下阈值的值均设为outsideValuethresholder->ThresholdBelow(lowerThr);try{thresholder->Update();}catch (itk::ExceptionObject& ex){//读取过程发生错误std::cerr << "Error: " << ex << std::endl;return false;}//>上阈值的值均设为outsideValuethresholder->ThresholdAbove(upperThr);try{thresholder->Update();}catch (itk::ExceptionObject& ex){//读取过程发生错误std::cerr << "Error: " << ex << std::endl;return false;}//介于阈值之外的值均设为outsideValuethresholder->ThresholdOutside(lowerThr, upperThr);try{thresholder->Update();}catch (itk::ExceptionObject& ex){//读取过程发生错误std::cerr << "Error: " << ex << std::endl;return false;}outImage = thresholder->GetOutput();return true;
}

2、itkBinaryThresholdImageFilter

2、itkBinaryThresholdImageFilter

该类的主要功能是通过阈值处理,将输入图像进行二值化。

输出的图像像素只有两个值:OutsideValue或者InsideValue,具体取决于相应的输入图像像素是否位于高低阈值LowerThreshold和UpperThreshold之间,其中当像素值等于任一阈值时,被认为是在阈值之间。
 
 

注意:LowerThreshold不得大于UpperThreshold ,否则会引发异常。

因此,通常仅需要设置其中之一,具体取决于用户是否希望阈值高于或低于期望阈值。

常用的成员函数

    Set/GetInsideValue():设置/获取“内部”像素值Set/GetOutsideValue():设置/获取“外部”像素值Set/GetLowerThreshold():设置/获取低阈值Set/GetUpperThreshold():设置/获取高阈值

与itkThresholdImageFilter相比较,itkBinaryThresholdImageFilter更适用于将图像根据两个阈值进行二值化处理,而itkThresholdImageFilter适用于将图像中符合条件的像素值映射为特定的数值。

Example:

#include "itkImage.h"
#include "itkBinaryThresholdImageFilter.h";using namespace itk;const unsigned int  Dimension = 3;       //数据的Dimension
typedef signed short shortPixelType;
typedef itk::Image<shortPixelType, Dimension> ShortImageType;//图像进行二值化阈值分割处理
bool binaryThresholdImage(ShortImageType* image, ShortImageType* outImage)
{const short lowerThr = 0;      //设置二值化的下阈值const short upperThr = 1000;   //设置二值化的上阈值short backGround = 0;          //设置背景值short foreGround = 255;        //设置前景值typedef BinaryThresholdImageFilter<ShortImageType, ShortImageType> BThresholdFilterType;typename BThresholdFilterType::Pointer thresholder = BThresholdFilterType::New();thresholder->SetInput(image);thresholder->SetOutsideValue(backGround);thresholder->SetInsideValue(foreGround);thresholder->SetLowerThreshold(lowerThr);thresholder->SetUpperThreshold(upperThr);try{thresholder->Update();}catch (itk::ExceptionObject& ex){//读取过程发生错误std::cerr << "Error: " << ex << std::endl;return false;}outImage = thresholder->GetOutput();return true;
}

3、itkOtsuThresholdImageFilter

该类的功能是使用最大类间方差法Otsu阈值设置图像阈值。

最大类间方差法:是由日本学者大津(Nobuyuki Otsu)于1979年提出的,是一种自适合于双峰情况的自动求取阈值的方法,又叫大津法,简称Otsu。是一种基于全局的二值化算法。

它是按图像的灰度特性,将图像分成背景和目标两部分。背景和目标之间的类间方差越大,说明构成图像的2部分的差别越大,当部分目标错分为背景或部分背景错分为目标都会导致2部分差别变小。因此,使类间方差最大的分割意味着错分概率最小。

常用的成员函数:

Set/GetInsideValue():设置/获取“内部”像素值
Set/GetOutsideValue():设置/获取“外部”像素值
Set/GetReturnBinMidpoint():设置/获取阈值是bin的中点还是最大值? 默认值是 bin 最大值
ReturnBinMidpointOn():设置/获取阈值是bin的中点还是最大值? 默认值是 bin 最大值
VerifyPreconditions():验证先决条件,验证过程对象是否已正确配置、所有必需的输入是否已设置以及所需的参数是否已正确设置, 如果无效,将抛出异常,在将 UpdateOutputInformation() 传播到输入之前调用此方法,ProcessObject 的实现验证 m_NumberOfRequiredInputs 是否已设置且不为空

Code

#include "itkImage.h"
#include "itkOtsuThresholdImageFilter.h"using namespace itk;const unsigned int  Dimension = 3;       //数据的Dimension
typedef signed short shortPixelType;
typedef itk::Image<shortPixelType, Dimension> ShortImageType;bool OtsuThresholdImage(ShortImageType* image, ShortImageType* outImage)
{short outsideValue = 0;    //设置前景背景值short insideValue = 255;typedef OtsuThresholdImageFilter<ShortImageType, ShortImageType> OtsuThresholdFilterType;typename OtsuThresholdFilterType::Pointer thresholder = OtsuThresholdFilterType::New();thresholder->SetInput(image);thresholder->SetOutsideValue(outsideValue);thresholder->SetInsideValue(insideValue);try{thresholder->Update();}catch (itk::ExceptionObject& ex){//读取过程发生错误std::cerr << "Error: " << ex << std::endl;return false;}outImage = thresholder->GetOutput();return true;
}

4、itkConnectedThresholdImageFilter

该类的功能是标记连接到种子并位于值范围内的像素。

该类使用ReplaceValue标记连接到初始种子且位于阈值下限和上限范围内的像素。

与itkThresholdImageFilter等前几个类相比,它们虽然都是根据不同像素的灰度值或像素特征将图像分割成不同的区域,但是此类不同的是基于连接像素的原理,通过选择与种子像素相连的像素来进行分割,分割的结果是连通区域,可以灵活地选择不同的种子点和连接条件,得到不同的连通区域。

itkConnectedThresholdImageFilter适用于分割具有明显边界的目标,可以得到分割结果中目标区域的边界比较平滑。而itkThresholdImageFilter/itkBinaryThresholdImageFilter适用于分割目标灰度值较高或较低的区域,可以得到目标区域与背景的清晰分割

常用的成员函数

AddSeed():增加种子点
ClearSeeds():清除种子列表
SetSeed():设置种子点
GetSeeds():获取种子容器
Set/GetLower():设置/获取下限阈值
Set/GetUpper():设置/获取上限阈值
Set/GetUpperInput():设置/获取连接到管道的上阈值输入
Set/GetLowerInput():设置/获取连接到管道的下阈值输入
SetConnectivity():要使用的连接类型(完全连接或 4(2D)、6(3D)、2*N(ND) 连接)
Set/GetReplaceValue():设置/获取值以替换阈值像素, 介于Lower和Upper(含)内的像素将被替换为该值, 默认值为 1

Code:

#include "itkImage.h"
#include "itkConnectedThresholdImageFilter.h"using namespace itk;const unsigned int  Dimension = 3;       //数据的Dimension
typedef signed short shortPixelType;
typedef itk::Image<shortPixelType, Dimension> ShortImageType;bool connectedThresholdImage(ShortImageType* image, ShortImageType* outImage)
{const short lowerThr = 0;      //设置二值化的上下阈值const short upperThr = 1000;const short replaceValue = 255;ShortImageType::IndexType seed;seed[0] = 100;     //该值必须在图像的三维大小范围内seed[1] = 100;seed[2] = 25;typedef ConnectedThresholdImageFilter<ShortImageType, ShortImageType> ConnectedThresholdFilterType;typename ConnectedThresholdFilterType::Pointer thresholder = ConnectedThresholdFilterType::New();thresholder->SetInput(image);thresholder->SetLower(lowerThr);thresholder->SetUpper(upperThr);thresholder->SetReplaceValue(replaceValue);thresholder->SetSeed(seed);try{thresholder->Update();}catch (itk::ExceptionObject& ex){//读取过程发生错误std::cerr << "Error: " << ex << std::endl;return false;}outImage = thresholder->GetOutput();return true;
}

http://www.yayakq.cn/news/185154/

相关文章:

  • wordpress 网站统计插件衡阳网站建设icp备
  • 上海建网站多少钱四川城乡和建设厅网站
  • 网站根目录权限设置网站开发专业课程
  • 手机建网站兰州口碑营销
  • 申请免费网站注册苏州好的做网站的公司有哪些
  • 招聘网站上找在家做html网站系统
  • 网站定制开发什么意思网站分销系统
  • 招聘网站如何做SEO蒙狼科技建设网站好不好
  • 建设信用卡中心网站徐州模板网站
  • 百度云主机做网站仿网站后台怎么做
  • 电商网站运营步骤php怎么做直播网站
  • 东营本地网站有哪些在北京大学生做家教的网站
  • j江苏省建设工程招投标网站上海闵行网
  • 网站开发实现前后端分离江西房地产网站建设
  • 科协网站页建设的意义实惠的福州网络推广
  • 揭阳高端网站建设价格房地产网站建设存在问题
  • 网站建设百度云资源服务关系型网站怎么做
  • 长宁网站设计wordpress 获取文章分类id
  • 网站建设多少钱一个站广西壮族自治区有几个市
  • 中山手机网站制作多少钱公司做网站需要什么手续吗
  • 企业网站建设的申请哪个网站做恒指好
  • 如何使用qq空间做推广网站长沙网站seo技巧
  • php开发的培训网站建设有了域名空间怎么做网站
  • 贵州省建设厅网站首页响应式表白网站源码
  • 建设银行龙卡网站工业设计外包平台
  • 河南 网站建设辽宁网站建设平台
  • 安徽哪家公司做网站比较好免费发布广告的网站
  • 网站热点关键词沈阳vi设计公司
  • 开发公司组织架构图模板seo怎么做
  • 镇江教育平台网站建设网站开发公司tahmwlkj