代码实现

CMakeLists.txt文件代码如下

CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
PROJECT(changePixel)
FIND_PACKAGE(VTK REQUIRED)
INCLUDE(${VTK_USE_FILE})
ADD_EXECUTABLE(changePixel  changePixel.cpp)
TARGET_LINK_LIBRARIES(changePixel  ${VTK_LIBRARIES})

changePixel.cpp代码如下

#include <vtkAutoInit.h>
#include <vtkSmartPointer.h>
#include <vtkJPEGReader.h>
#include <vtkImageViewer2.h>
#include <vtkRenderWindowInteractor.h>
#include <vtkPNGWriter.h>
#include <vtkRenderer.h>
#include <vtkRenderWindow.h>
#include <vtkRenderWindowInteractor.h>
#include <vtkInteractorStyleImage.h>
#include <vtkImageActor.h>
#include <vtkImageData.h>VTK_MODULE_INIT(vtkRenderingOpenGL2);
VTK_MODULE_INIT(vtkInteractionStyle);
VTK_MODULE_INIT(vtkRenderingVolumeOpenGL2);int main()
{vtkSmartPointer<vtkJPEGReader> reader =vtkSmartPointer<vtkJPEGReader>::New();//读取JPG文件reader->SetFileName("/home/jack/projects/VTK/7demo/test.jpeg");reader->Update();int dims[3];//获取图片的位数reader->GetOutput()->GetDimensions(dims);for (int k = 0; k < dims[2]; k++){for (int j = 0; j < dims[1]; j++){for (int i = 0; i < dims[0]; i++){//i < 400 && i > 0 && j > 0 && j < 400表示要改修的范围if (i < 400 && i > 0 && j > 0 && j < 400){//记得要转换成(unsigned char *)类型unsigned char *pixel = (unsigned char *)(reader->GetOutput()->GetScalarPointer(i, j, k));//修改R*pixel = 255 - *pixel;//修改G*(pixel + 1) = 255 - *(pixel + 1);//修改B*(pixel + 2) = 255 - *(pixel + 2);}}}}vtkSmartPointer<vtkImageViewer2> ImageViewer =vtkSmartPointer<vtkImageViewer2>::New();ImageViewer->SetInputConnection(reader->GetOutputPort());//显示该幅图像ImageViewer->Render();//加入交互机制//实例化一个交互器对象interactorvtkSmartPointer<vtkRenderWindowInteractor> renderWindowInter =vtkSmartPointer<vtkRenderWindowInteractor>::New();ImageViewer->SetupInteractor(renderWindowInter);renderWindowInter->Initialize();renderWindowInter->Start();}

结果

VTK-修改图片的像素相关推荐

  1. 在线压缩照片、修改图片尺寸像素、在线ps、免费在线做图实时协助

    在线压缩照片 修改图片尺寸像素 在线ps 免费在线做图实时协助

  2. Java读取并修改图片的像素值

    Java程序读取图片像素的值类, package work;import java.awt.AWTException; import java.awt.Dimension; import java.a ...

  3. php 截取图片像素,php 如何修改图片像素大小

    php修改图片像素大小的方法:首先创建一个PHP示例文件:然后根据后缀,由文件或URL创建一个新图象:接着获取当前待修改图片的像素:最后重采样拷贝部分图像并调整大小即可. 推荐:<PHP视频教程 ...

  4. 怎么把图片修改成600x800像素图片?

    怎么把图片修改成600x800像素图片?在日常生活和工作中,会遇到提交的图片有规定的像素要求,比如600x800,这个时候小伙伴们纷纷举手说这题我会做,不要着急,如果是批量操作成百上千张图片呢?这个问 ...

  5. java 修改图片分辨率_java 修改图片的像素大小,清晰度

    修改图片的像素,清晰度 代码 /** * 改变图片 像素 * * @param file * @param qality 参数qality是取值0~1范围内 清晰程度 数值越小分辨率越低 * @par ...

  6. java 修改图片的像素大小,清晰度

    修改图片的像素,清晰度 代码 /*** 改变图片 像素** @param file* @param qality 参数qality是取值0~1范围内 清晰程度 数值越小分辨率越低* @param im ...

  7. 电脑怎么修改图片像素大小,快速批量处理方法

    电脑怎么修改图片像素大小?很小伙伴还不理解什么是图片的像素,还以为图片的像素代表了图片的清晰度,其实不是的,我们常说的像素其实就是图片尺寸的意思,因此修改图片的像素其实就是修改图片尺寸的意思.在生活中 ...

  8. android图片分辨率改变,android 通过修改图片像素实现CircleImageView

    CircleImageView实现方法有很多种,各有优缺点,因此需要按照不同的场景使用.我们今天使用修改图片像素的方法实现CircleImageView,主要知识点无非是勾股定理和点到圆形的距离. 素 ...

  9. PIL修改带有透明像素的png图片颜色

    知识补充 颜色有两种 RGBA 和 RGB, 前者有 4 个值(r, g, b, a),后者有 3 个值(r,g,b),每个都是 0 到 255,RGBA 的 a 就代表透明度.a= 0表示透明 ge ...

  10. python修改图片,Python之修改图片像素值的方法

    在做语义分割项目时,标注的图片不合标准,而且类型是RGBA型,且是A的部分表示的类别,因此需要将该图片转化为RGB图片 # -*- coding:utf8 -*- import os from PIL ...

最新文章

  1. 脚本化 tmux — LinuxTOY
  2. 中国疾控中心回应论文争议:所有病例在论文撰写前已向社会公布
  3. php无法引用,PHP错误:“无法通过引用传递参数2”
  4. java的AutoCloseable接口
  5. [WorldWind学习]12.WavingFlags和WavingFlagLayer
  6. python生成json_生成动态嵌套JSON对象和数组-python - python
  7. 计算机网络(二)-性能指标
  8. Java 生成随机数的 N 种方法
  9. C++提高部分_C++函数模板的概念---C++语言工作笔记080
  10. 计算机网络相关的知识,计算机网络相关知识整理
  11. 不写代码不用Excel,如何制作高大上的财务分析?
  12. jdbc mysql innodb 死锁 deadlock_Mysql InnoDB 数据更新/删除导致锁表
  13. windows黑窗命令
  14. 手机号码归属地查询,手机号码归属地批量查询
  15. HDU-5773 The All-purpose Zero(LIS变形)
  16. 计算机网络子网斜杠后面的含义,ip地址后面的斜杠24是什么意思
  17. 易捷行云EasyStack与火星高科完成产品互认证,保护云上数据
  18. 模型会忘了你是谁吗?两篇Machine Unlearning顶会论文告诉你什么是模型遗忘
  19. github免用户名密码管理代码
  20. 《鬼谷子》飞箝第五(原文)

热门文章

  1. java 实现ps功能_java 简单图片,可以实现ps的几个小滤镜
  2. python中shelf_Python cmds.shelfLayout方法代码示例
  3. Excel如何快速统计某列数据出现次数
  4. 【C++】2048游戏系列---优化模块第一稿【加载图片】
  5. Tomcat、Servlet、JSP、EL和JDK版本对照以及各版本Tomcat下载
  6. 什么是TypeScript?本文介绍TypeScript基本用法和语法。
  7. MATLAB使用符号工具箱计算函数的5阶麦克劳林多项式的四种方法(附指定阶数、指定点的泰勒展开)
  8. php木马伪装成图片,木马伪装图片运行的技巧
  9. 每日一题——有效的数独
  10. 中国车牌归属地数据库