ITK读取RGB图像像素值

/*这个程序接收输入参数作为文件路径, 读取指定的图片数据(RGB), 并显示指定位置的像素值。(这里是[0,0]位置) */
#include "itkImage.h" 
#include "itkRGBPixel.h" 
#include "itkJPEGImageIOFactory.h"
#include "itkImageFileReader.h" 
#include <iostream> 
using namespace std;
int main(int, char * argv[])
{ //声明一些参量类型 //指定图片像素类型为RGB,unsigned char,2维平面图 //通过指定的图像类型声明图像读取器 typedef itk::RGBPixel<unsigned char>PixelType;typedef itk::Image<PixelType, 2>ImageType;typedef itk::ImageFileReader<ImageType> ReaderType;//创建图像读取器 ReaderType::Pointer reader = ReaderType::New();itk::JPEGImageIOFactory::RegisterOneFactory();//从命令行参数获取文件路径,并设置给reader const char* filename = "test1.jpg";reader->SetFileName(filename);reader->Update();//声明图像object,并与读取器输出绑定 ImageType::Pointer image = ImageType::New();image = reader->GetOutput();//itk中访问图像数据需要通过Index,Index在这里理解成一个数组 //维数与图像维数对应 //并设置要访问的位置[0,0] ImageType::IndexType pixcelIndex;pixcelIndex[0] = 0;//列数 pixcelIndex[1] = 0;//行数 //获取图像的像素数据 PixelType pixel1 = image->GetPixel(pixcelIndex);PixelType::ValueType red = pixel1.GetRed();PixelType::ValueType green = pixel1.GetGreen();PixelType::ValueType blue = pixel1.GetBlue(); //输出数据,注意,itk中的像素数据需要由专门的模块来处理 cout << "get pixel at [0,0]:" << endl;cout << "R:" << itk::NumericTraits<PixelType::ValueType>::PrintType(red) << endl;cout << "G:" << itk::NumericTraits<PixelType::ValueType>::PrintType(green) << endl;cout << "B:" << itk::NumericTraits<PixelType::ValueType>::PrintType(blue) << endl;system("pause");return 0;
}


 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/350555.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微小宝公众号排行榜_排行榜 | 山西省高校、高职中专微信公众号周数据排行榜...

戳上面的蓝字关注我们哦&#xff01;《山西教育》杂志社公众号“山西教育杂志”微信号shanxi_jiaoyu山西教育杂志社山西教育山西省高校微信公众号2020年周数据分析11月22日至11月28日WCI指数 通过微信公众号推送文章的传播度、覆盖度及公号的成熟度和影响力&#xff0c;来反映微…

二阶段冲刺第七天

站立会议时间&#xff1a;5.15 站立会议地点&#xff1a; 站立会议内容&#xff1a; 王建宁&#xff1a; 昨天把管理员界面上的listview添加了点击事件&#xff0c;点击进去可以填写维修信息&#xff0c;也可以对维修信息进行更改 今天制作管理员界面&#xff0c;长按对反馈信息…

垃圾收集算法,垃圾收集器_为什么我不能关闭垃圾收集器?

垃圾收集算法,垃圾收集器让我们开始快速回顾一下我作为Java开发人员的职业生涯的早期。 我想消除正在进行的测试中的垃圾回收&#xff08;GC&#xff09;暂停。 瞧&#xff0c;当我发现无法完成时&#xff0c;我很生气。 那时&#xff0c;我把问题留在了“设计错误”中&#xf…

串口 驱动 热敏打印机_热敏纸标签打印不出来文字 是因为……

点击↑箭头处“蓝色字”&#xff0c;关注我们哦&#xff01;&#xff01;Hello&#xff0c;各位纸友们好呀&#xff01;我是小冠~随着生活的需要&#xff0c;热敏纸标签在生活中也成了必不可少一个部分&#xff01;那么&#xff0c;为什么有的热敏纸标签有的时候会打印不出来文…

四级英语day14

1. instance /ˈɪnstəns/ n.例子 vt.举…为例2. formal /ˈfɔːməl/ a.①形式上的②正式的3. casual /ˈkʒuəl/ a.①漫不经心的②非正式的③临时的4. cause /kɔːz/ n.①原因②理由③事业 vt.引起5. foundation /faunˈdeɪʃən/ n.①地基②建立③根据6. generous…

JDK 9已完成功能!

今天的马克莱因霍尔德 &#xff08; Mark Reinhold&#xff09;消息JDK 9已完成功能完善-现在该降级了 &#xff0c; 它宣布JDK 9的“总体功能集已冻结”。 甲骨文Java平台小组的首席架构师Reinhold补充说&#xff1a;“极不可能将任何进一步的JEP定向到该发行版。” 与该消息类…

登录样式:log4j 2,上下文,自动清理…全部不附带任何字符串!

日志记录-保持操作的时间跟踪-对于任何关键任务系统&#xff0c;无论大小&#xff0c;都至关重要。 我们的Project-X框架也是如此 &#xff0c;这就是为什么我们希望从一开始就正确地做到这一点。 基于我们在传奇的UltraESB上的登录经验&#xff0c; 上下文日志记录&#xff0…

java date加一天_Java日期时间API系列15-----Jdk8中API类,java日期计算2,年月日时分秒的加减等...

通过Java日期时间API系列8-----Jdk8中java.time包中的新的日期时间API类的LocalDate源码分析 &#xff0c;可以看出java8设计非常好&#xff0c;实现接口Temporal, TemporalAdjuster, ChronoLocalDate等&#xff0c;有非常丰富的方法。例如&#xff1a;LocalDateTime&#xff1…

霍夫变换(Hough Transform)

一、直线检测相关算法   1.1 霍夫变换&#xff08;Hough Transform&#xff09;  霍夫变换&#xff08;Hough Transform&#xff09;换于1962年由Paul Hough 首次提出&#xff0c;后于1972年由Richard Duda和Peter Hart推广使用&#xff0c;是图像处理中从图像中检测几何形…

JDK 9是某些功能的终结

几天前宣布JDK 9是Feature Complete&#xff01; 进行剪切的许多“功能”都是添加项&#xff0c;但有些是删除项。 这篇文章介绍了从OpenJDK和/或Oracle的JDK Java 9中删除的一些项目。 JEP 220 &#xff08;“模块化运行时图像”&#xff09;的一部分是删除了Java认可标准覆盖…

一种table超出高度自动出滚动条的解决方案

参考链接&#xff1a; http://www.cnblogs.com/xiaoafei1991/archive/2015/09/30/4781592.html转载于:https://www.cnblogs.com/ziyoublog/p/10870048.html

最近邻插值、双线性插值、双三次插值

1.最近邻插值 越是简单的模型越适合用来举例子&#xff0c;我们就举个简单的图像&#xff1a;3X3 的256级灰度图&#xff0c;也就是高为3个象素&#xff0c;宽也是3个象素的图像&#xff0c;每个象素的取值可以是 0&#xff0d;255&#xff0c;代表该像素的亮度&#xff0c;25…

java map转json字符串_Java-Gso-json字符串解析-php后台返回字段类型可能为字符串(/空字符串)或者对象的情况...

其实本来android前端定义的对象类型是对象&#xff0c;如果后台没有值的情况下&#xff0c;理论上给null&#xff0c;如果是数组给[]或者null都可以的。这样Gson再解析转换的时候就不会出问题&#xff01;但是最近重构发现后台如果没有字段值给的是""空字符串&#x…

oracle中时间加减一年的写法

select add_months(date2019-5-15,-12) from dual; -- 2018-5-15 通过add_months(x,y)函数,在给定的时间x固定的月份y select date2019-5-15 interval -1 year from dual; --2018-5-15 通过interval函数&#xff0c;这个用来表示一段时间间隔,有固定的格式,这里用来加一年&a…

'fopen' This function or variable may be unsafe

1>...error C4996: fopen: This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. 1> 正在生成代码... 生成: 成功 0 个&#xff0c;失败 1 个&#xff0c;最…

python3捕获异常_python中异常捕获方法详解

在Python中处理异常使用的是try-except代码块&#xff0c;try-except代码块放入让python执行的操作&#xff0c;同时告诉python程序如果发生了异常该怎么办&#xff0c;try-except这个功能其实很多入门书籍中都放到了高级篇幅里&#xff0c;在入门的时候一般不会讲这个使用&…

自定义java线程池_我的Java自定义线程池执行器

自定义java线程池ThreadPoolExecutor是Java并发api添加的一项功能&#xff0c;可以有效地维护和重用线程&#xff0c;因此我们的程序不必担心创建和销毁线程&#xff0c;也不必关注核心功能。 我创建了一个自定义线程池执行程序&#xff0c;以更好地了解线程池执行程序的工作方…

es6方法过滤掉两个数组中对象id值相等的项

let arr1[{id:1,name:张三},{id:2,name:李四}] let arr2[{id:1,name:张三},{id:3,name:王五},{id:44,name:王柳},{id:45,name:王琦},] let addarr2.filter(item>!arr1.some(ele>ele.iditem.id)) console.log(add) const arr1 [{ id: 1, name: 网 }, { id: 2, name: 二位…

大尾和小尾

字节存放有大尾和小尾之分。如果对应数据的高字节存放在低地址就是大尾&#xff0c;反之&#xff0c;高字节存放在高地址的就是小尾。 比如 short int a 0x1234 大尾存放时&#xff1a; 偏移地址 存放内容 0x0000 0x12 0x0001 0x34 小尾存放&#xff1a; 偏移…

jedis使用_Redis的三个框架:Jedis,Redisson,Lettuce

Jedis api 在线网址&#xff1a;http://tool.oschina.net/uploads/apidocs/redis/clients/jedis/Jedis.htmlredisson 官网地址&#xff1a;https://redisson.org/redisson git项目地址&#xff1a;https://github.com/redisson/redissonlettuce 官网地址&#xff1a;https://le…