opencv 读入图像并显示
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
using namespace cv;
int main()
{
// 读入一张图片(游戏原画)
Mat img = imread("pic.jpg");
// 创建一个名为 "游戏原画"窗口
cvNamedWindow("游戏原画");
// 在窗口中显示游戏原画
imshow("游戏原画", img);
// 等待6000 ms后窗口自动关闭
waitKey(6000); //这句话很重要
}
itk 读入nii图像并遍历以及获取尺寸等,itk 写图像也是一样的。
#include "itkImageFileReader.h"
#include "itkImageFileWriter.h"
#include "itkNiftiImageIO.h"
void main()
{
using ImageIOType = itk::NiftiImageIO;
using Short3DImageType = itk::Image< ShortPixelType, 3 >;
using ReaderType = itk::ImageFileReader< Short3DImageType >;
ReaderType::Pointer Reader = ReaderType::New();
Reader->SetFileName(InputFileName);
ImageIOType::Pointer gNiftiImageIO = ImageIOType::New();
Reader->SetImageIO(gNiftiImageIO);
Reader->Update();
Short3DImageType::Pointer OriImg = Reader->GetOutput();
Short3DImageType::RegionType WLinputRegion = OriImg->GetBufferedRegion();
Short3DIteratorType WLit(OriImg, WLinputRegion);
WLit.GoToBegin();
while (!WLit.IsAtEnd())
{
float temp =round( (float(WLit.Get())- dmin)*dFactor );
++WLit;
}
Short3DImageType::SizeType MSize = WLinputRegion .GetSize();
}