自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 资源 (2)
  • 收藏
  • 关注

原创 vtkPolygon转vtkImageData

vtkPolygon转vtkImageData。

2023-07-12 15:42:20 81

原创 vtk多volume融合

参考: https://blog.csdn.net/qq_33598781/article/details/123037326?

2023-07-11 13:46:02 343

原创 RANSAC三维直线拟合

ransac直线拟合

2022-11-10 15:54:19 1007 1

原创 itk::Image与Tensor数据转换

【代码】itk::Image与Tensor数据转换。

2022-10-09 13:29:02 638

原创 基于主轴变换的医学图像倾斜校正

问题描述在MRI扫描的时候,可能会由于病人体位的关系,出现扫描图像是倾斜的状况,如下图所示。在特定的情况下,病人的倾斜状态会影响到后面我们数据的处理。比如在MRI头部自动定位通常是通过AC-PC连线来确定的,如果病人头部存在倾斜,则AC-PC点可能并不在同一个矢状位面上,给定位增加了难度。如何计算切斜角度切斜角度计算的方法很多,常见的有基于主轴变换的方法[1]和基于傅里叶变换的方法[2]。我这里主要介绍使用主轴变换来计算偏转角度。图像矩图像矩主要表征了图像区域的几何特征,又称为几何矩。由于

2021-09-10 16:18:14 742

原创 ITK图像配准总结

2021-08-26 17:38:36 411

原创 Pytorch医学图像分割网络预测部署

pytorch预测import numpy as npimport SimpleITK as sitkimport torchimport torch.nn as nnclass ToyNet(nn.Module): def __init__(self): super(ToyNet, self).__init__() self.conv1 = torch.nn.Sequential( torch.nn.Conv3d(in_chann

2021-08-25 14:25:34 295

原创 VTK解决曲面拟合问题

将问题简化为拟合二次曲面函数z=ax2+by2+cxy+dx+ey+fz = ax^2 + by^2 + cxy + dx + ey + fz=ax2+by2+cxy+dx+ey+f写成矩阵乘法形式z=[x2y2xyxy1][abcde]z = \begin{bmatrix}x^2 & y^2 & xy & x & y & 1\end{bmatrix}\begin{bmatrix}a\\ b\\ c\\ d\\ e\\ \end{bm.

2021-08-10 16:41:05 869

原创 ITK标记分水岭实现

算法流程#mermaid-svg-CrQ2MV9wXEx3MmSL .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-CrQ2MV9wXEx3MmSL .label text{fill:#333}#mermaid-svg-CrQ2MV9wXEx3MmSL .node rect,#mermaid-svg-CrQ2M

2021-06-24 16:49:40 387 1

原创 ITK连通域分析

连通域一个区域D中,任一闭曲线所围区域,都属于区域D,称为“单连通区域”。连通域形状分析创建二值图像using ImageType = itk::Image<unsigned char, 2>;ImageType::Pointer CreateMaskImage(){ ImageType::Pointer image = ImageType::New(); ImageType::IndexType start; start.Fill(0); ImageType::Si

2021-06-16 18:03:03 1083

原创 医学图像坐标变换

计算世界坐标涉及到的图像属性有:orientationspacingorigin/* voxel index to point world position */void IJK2WP(double* origin, double* spacing, double* orientation, int* ijk, double* wp){ // |x| | x1*spx y1*spy z1*spz dx| |i| // |y| = | x2*spx y2*spy z2*s

2021-01-15 08:44:28 363

原创 PGL图神经网络节点分类流程

1.数据导入import pglimport paddle.fluid as fluidimport numpy as npimport timeimport pandas as pdfrom collections import namedtupleDataset = namedtuple("Dataset", ["graph", "num_classes", "train_index", "train_label", "v

2020-11-30 09:42:52 642 1

原创 Dicom图像方位解析

问题任意给定一张Dicom图像或者MPR重建图像,怎么解析这个图像的具体方位呢?前置Dicom图像中通常使用LPS来表示X,Y,Z轴正方向。Dicom图像中的tag(0020,0037)表示图像X轴与Y轴在标准LPS坐标系里的方位向量。解析对于任意给定的方向向量(x,y,z)x>0,表示该方向与L同向;x<0,表示该方向与R同向;y>0,表示该方向与P同向;x<0,表示该方向与A同向;z>0,表示该方向与S/H同向;x<0,表示该方向与I/F同向

2020-11-20 14:51:33 2503 1

原创 Catch2单元测试框架

简介Catch2是一个header-only测试框架。使用说明#define CATCH_CONFIG_MAIN // 宏定义指明main()函数#include "catch.hpp"// 测试用例TEST_CASE( "vectors can be sized and resized", "[vector]" ) { std::vector&lt;int&gt; v(...

2018-12-13 19:15:34 2856

原创 vtk多个窗口交互问题

vtk多个窗口进行交互,每个窗口需要有单独的vtkRenderWindowInteractor。在render的时候,执行vtkRenderWindowInteractor::Start之后,主线程会被阻塞。所以以下方式进行渲染是错误的。void Render(int i){....interactor-&gt;Start();}for(int i=0;i&lt;N;i++){...

2018-11-28 16:26:29 2692

原创 vtk录制avi解决方案

vtk中使用vtkWindowToImageFilter和vtkAVIWriter来实现render window内容的录制。但是在录制过程中需要自行Modify vtkWindowToImageFilter数据以及vtkAVIWriter的writer方法。自然而然的想法是使用Timer来定时执行。通过指定帧率,可以计算出采样帧的时间间隔。方案一:对interactor创建timer ca...

2018-11-22 16:56:05 955 1

原创 二值图像距离图生成算法

算法主要步骤初始化将图像分为内部点和非内部点(内部点本身为1且4领域皆为1)初始化距离图像,内部点值为INF,非内部点为0更新距离 - 由上到下,由左至右迭代计算,伪代码如下:def forward_conv(image): for i in range(hight): for j in range(width): f...

2018-04-28 10:28:24 1210

原创 Qt部署qwindows.dll错误问题

问题描述This application failed to start because it could not find or load the Qt platform plugin "windows".解决1.使用depends.exe查看添加必要的dll 2.添加这两个dll(depends程序并未指明) libGLESv2.dll libEGL.dll 3.添...

2018-03-29 14:05:51 1297

原创 Pandas分裂dataframe

In [3]: df = pd.DataFrame({'years': ['1900-2000', '1920-2020', '1930-2030']})In [4]: dfOut[4]: years0 1900-20001 1920-20202 1930-2030In [14]: df['start'], df['end'] = zip(*df['years'].map

2017-11-16 14:36:48 2771

原创 invalid comparator问题

std::set使用自定义key时,需要指定comparator,具体做法如下:struct cmpByStringLength { bool operator()(const std::string& a, const std::string& b) const { return a.length() < b.length(); }};// ...s

2017-09-30 16:38:26 7230

原创 ITK spacing的问题

double spacing[3]; spacing[0] = reader->GetOutput()->GetSpacing()[0]; spacing[1] = reader->GetOutput()->GetSpacing()[1]; spacing[2] = reader->GetOutput()->GetSpacing()[2]; int dims[3];

2017-07-26 11:58:01 1031

原创 vtk设置actor颜色问题

设置颜色vessel_actors->GetProperty()->SetColor(0.75, 0.75, 0.75);此时,会显示蓝色 需要设置对应的mappervessel_mappers->ScalarVisibilityOff();参考: http://vtk.1045678.n5.nabble.com/vtkActor-GetProperty-gt-SetColor-not-work

2017-07-26 10:57:33 5803

原创 vtk处理外部事件

Command方式class CommandSubclass : public vtkCommand{public: vtkTypeMacro(CommandSubclass , vtkCommand); static CommandSubclass *New() { return new CommandSubclass ; } void Ex

2017-07-07 16:58:29 877

原创 libmodbus实现modbus poll功能

#include <modbus.h>#include <iostream>#include<stdlib.h>#include<time.h>using namespace std;int main(){ modbus_t *ctx; srand((unsigned)time(NULL)); // 创建modbus连接 ctx = modbus_new_tcp

2017-06-28 23:28:01 1831 1

原创 可用的Qt设置桌面图标方法

官方解决方案要设置pro文件,一般win下开发使用vs-addin,所以不适用。 网上另一种解决方案是修改vs的vcxproj文件,我试了,没有效果。 亲测可用的方案如下:1.添加ico文件 2.重命名“appnameico.ico”(不确定是不是必须) 3.新建txt文件,命名为appname.rc,添加IDI_ICON1 ICON DISCARDABLE "appnameico.ico"

2017-03-21 10:11:33 797

原创 std::unordered_map用法

map/unordered_map区别实现map为红黑树,内部元素有序unordered_map内部为哈希表适用场景map适合要求元素有序的场景unordered_map查找较快初始化c++11c++11中简化了操作,可以直接进行初始化class myClass { private: static map<int,int> myMap;};//myClass.cppma

2017-02-24 16:12:48 1845

原创 基于cyptopp库的rsa加解密详解

编译Cryptopp编译过程没有什么特别,需要注意的是,如果使用dll版本的库,只包含IPS认证的算法,而编译静态链接库则包含全部算法,具体参考[1,2]。 cryptopp - This builds the DLL. Please note that if you wish to use Crypto++ as a FIPS validated module, you must use

2016-08-26 17:21:14 3570

原创 ODB库安装使用简介

调研awesome cpp的database列表Hiberlite ORM仅支持sqlite[ODB]简洁,支持主流数据库,官方手册OTL不支持ORM,例子在这里SOCI同样不支持ORM,查看例子下载odb-2.4.0-i686-windowslibodb-2.4.0libodb-sqlite-2.4.0(自行选择)libodb-boost-2.4.0(自行选择,主要为智能指针添

2016-08-22 16:18:08 2609

原创 Titan连接Hbase后端

步骤1.启动hbase➜ hbase-1.1.2 ./bin/start-hbase.shstarting master, logging to /home/luxh/hbase/hbase-1.1.2/bin/../logs/hbase-luxh-master-ubuntu.out2.启动gremlin:连接本地hbase时不需要显式加入host➜ titan-1.0.0-hadoop1

2015-12-02 15:06:38 2689 1

原创 NLTK命名实体识别

引例:NLTK中对于很多自然语言处理应用有着开箱即用的api,但是结果往往让人弄不清楚状况。 下面的例子使用NLTK进行命名实体的识别。第一例中,Apple成功被识别出来,而第二例并未被识别。究竟是什么原因导致这样的结果,接下来一探究竟。In [1]: import nltkIn [2]: tokens = nltk.word_tokenize('I am very excited about

2015-12-02 14:51:44 15540 1

原创 NLTK安装教程

1. 安装nltksudo pip install nltk2. 安装nltk_data nltk.downloader自动下载python -m nltk.downloader all网盘链接: http://pan.baidu.com/s/1mgGozzU 密码: axx8 解压地址: (1). C:\nltk_data (Windows); (2). /usr/local

2015-12-02 11:10:36 1090

Catmull-Rom插值算法.pdf

catmull-rom实现

2020-04-19

基于医疗大数据和人工智能的影像组学及临床应用

基于医疗大数据和人工智能的影像组学及临床应用

2019-03-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除