MITK编译安装详解

本文介绍了MITK的相关内容,包含官方文档及有用链接。详细说明了安装所需的vs2013、cmake、qt等软件版本及下载地址,阐述了编译步骤和可能遇到的错误及解决办法。还介绍了workbench测试、自定义插件生成以及借助mitk框架创建图像处理软件的方法。

原文链接 https://blog.youkuaiyun.com/qq_16949707/article/details/59108638

 

1 介绍

官方文档http://docs.mitk.org/2016.11/index.html

 
http://docs.mitk.org/2016.11/Architecture.html#OverviewPage_DesignOverview

2 一些有用的链接

MITK简介及安装 
http://blog.youkuaiyun.com/taigw/article/details/49270489 
MITK安装教程(非中科院版7月8日更新) 
MITK官方build教程 
http://www.voidcn.com/blog/lanxuxml/article/p-1347509.html 
MITK官方源码下载地址 
http://www.mitk.org/wiki/Download 

MITK例子的一些解释 
https://github.com/summit4you/MITK-material-ZH/blob/master/MITK-tutorial.md

3 安装(版本是我自己的)

1 vs2013 目前要update5以上,更新不够就去官网下载更新包并更新,更新时间也挺久的 
2 cmake 3.8  
https://cmake.org/download/ 
3 qt下载地址  注意最好统一选择x64位版本,将来编译mitk也选择64位版本
https://download.qt.io/archive/qt/5.6/5.6.0/  
4 源码 
http://www.mitk.org/wiki/Download 
windows下载这个(下的很慢) 


windows下用git源码或者linux版本的源码会报错(折腾了我好久): 
error MSB6006 : “cmd.exe” exited with code 3  
https://social.msdn.microsoft.com/Forums/en-US/a813616d-5fa4-481d-934f-cea6126d2f62/error-msb6006-cmdexe-exited-with-code-3?forum=vcgeneral

4 编译 
先装好qt 
cmake设置source路径以及binaries安装路径 
第一次configure后提示找不到qt,手动设置qt路径,我的是 
C:\Qt\Qt5.6.2\5.6\msvc2013_64\lib\cmake\Qt5 
建议编译例子设为on 
再次configure直到红色消失

然后generate 
然后open project 
然后ALL_BUILD这里时间比较久,会自动下载第三方库然后解压编译,如果下不下来也可以手动下载然后放入相应目录 
ALL_BUILD检查错误,编码方式错误,请参考这个: 
http://www.voidcn.com/blog/lanxuxml/article/p-1347509.html 
然后INSTALL 
好像还有个错误:VS_error MSB3073: :VCEnd”已退出,代码为 1。 
参考这个 
http://www.07net01.com/2016/12/1759174.html

2013年7月8日更新:编译MITK-superbuild.sln后若会出现大量错误,错误来源是MITK-build这个工程下的两个cpp文件,先从新编译这个工程,如果还有错误。打开工程找到下属的mitk这个工程编译。出现两个警告和错误。打开出现warning的文件(mitkPointSetGLMapper2D和mitk:SlicedGeometry3D),Ctrl+A全选,然后在文件菜单:file->advanced save options ,在弹出的选项中选择新的编码方式为:UNICODE codepage 1200 ,点击确定,问题就解决了。(更新来自中国可视化实验室  怕  同学,感谢 怕 同学,注:文中已更新!)

注:我本地没有找到mitkPointSetGLMapper2D这个文件,我只用记事本另存为了mitkSlicedGeometry3D.cpp

5 测试

 

5.1 workbench

例如我的目录 
D:\MITK-bin-win\MITK-build\bin 
有个批处理文件startMitkWorkbench_debug.bat,可以自动设置环境变量path以及自动运行MitkWorkbench,可以用下玩玩,如下图 


5.2 自定义插件生成

参考 
http://docs.mitk.org/2016.11/NewPluginPage.html#NewPluginWithProject 
http://blog.youkuaiyun.com/taigw/article/details/49270489 
例如我的目录 
D:\MITK-bin-win\MITK-build\bin\Debug 
下有MitkPluginGenerator.exe插件生成器,可以用于生成你自己的mitk项目模板。

.\MitkPluginGenerator -plugin-symbolic-name org.mycompany.myplugin -view-name "My View" -project-name "MyProject" -project-app-name "MyApp" -o D:\MITK_learn1

会创建如下文件 


这就是一个源文件了,跟编译源码一样,创建新二进制文件夹然后用cmake编译,选择EXTERNAL_MITK_DIR(或者MITK_DIR)(让他找到mitk的cmake文件即可)将其设为MITK项目所在的位置,我的为: 
D:\MITK-bin-win\MITK-build 
编译后在\MyProject-build\bin比如我的为D:\MITK_learn\bin\MyProject-build\bin 
下也可以找到一个批处理文件startMyApp_debug.bat点击后可以运行,与上面workbench类似。

 

5.3 借助mitk框架利用cmake创建自己的图像处理软件

源码目录下 
D:\MITK-src-win\Examples\Tutorial\Step1 
有测试1的源码 
step1.cpp 
编写CMakeList.txt(这里相对于 
http://blog.youkuaiyun.com/taigw/article/details/49270489,去掉了检查MITK_USE_QT,加上一直会报错不知道为啥,不加通过也能用,因为我但是选的是MITK_USE_QT 为on,只是检测时检测不到)

cmake_minimum_required(VERSION 3.2 FATAL_ERROR)  

project(QtAppExample)  

find_package(MITK REQUIRED)  


# Create the executable - it needs the MitkQtWidgetsExt module  
mitk_create_executable(${PROJECT_NAME} DEPENDS MitkQtWidgets) 123456789

编写files.cmake

# List all source files  
set(CPP_FILES Step1.cpp)  12

编译生成后,打开项目,在源文件下添加源目录D:\MITK-src-win\Examples\Tutorial下的test.h和test.cpp如下图: 
 
编译后,可以生成自己利用mitk框架读取图片的例子了。 
在这个项目的cmake生成的二进制目录下找到debug目录,例如我的为D:\myproj\mitk\bin\Debug,编写新的批处理文件 
QtAppExample.bat

.\QtAppExample.exe d:\data\Pic3D.nrrd
pause12

点击批处理文件可以读入图片(自己下载Pic3D.nrrd并改写自己的路径) 
--------------------- 
作者:HxShine 
来源:优快云 
原文:https://blog.youkuaiyun.com/qq_16949707/article/details/59108638 
版权声明:本文为博主原创文章,转载请附上博文链接!

06-22
### 得物技术栈及开发者文档分析 得物作为一家专注于潮流商品的电商平台,其技术栈和开发者文档主要围绕电商平台的核心需求展开。以下是对得物技术栈及相关开发资源的详细解析: #### 1. 技术栈概述 得物的技术栈通常会涵盖前端、后端、移动应用开发以及大数据处理等多个领域。以下是可能涉及的主要技术栈[^3]: - **前端开发**: 前端技术栈可能包括现代框架如 React 或 Vue.js,用于构建高效、响应式的用户界面。此外,还会使用 Webpack 等工具进行模块化打包和优化。 - **后端开发**: 后端技术栈可能采用 Java Spring Boot 或 Node.js,以支持高并发和分布式架构。数据库方面,MySQL 和 Redis 是常见的选择,分别用于关系型数据存储和缓存管理。 - **移动应用开发**: 得物的移动应用开发可能基于原生技术(如 Swift/Kotlin)或跨平台框架(如 Flutter)。这有助于确保移动端应用的性能和用户体验一致性。 - **大数据云计算**: 在大数据处理方面,得物可能会使用 Hadoop 或 Spark 进行数据挖掘和分析。同时,依托云服务提供商(如阿里云或腾讯云),实现弹性扩展和资源优化。 #### 2. 开发者文档分析 类似于引用中提到的 Adobe 开发者文档模板[^2],得物也可能提供一套完整的开发者文档体系,以支持内部团队协作和外部开发者接入。以下是开发者文档可能包含的内容: - **API 文档**: 提供 RESTful API 或 GraphQL 的详细说明,帮助开发者快速集成得物的功能模块,例如商品搜索、订单管理等。 - **SDK 集成指南**: 针对不同平台(如 iOS、Android 或 Web)提供 SDK 下载和集成教程,简化第三方应用的开发流程。 - **技术博客**: 分享得物在技术实践中的经验成果,例如如何优化图片加载速度、提升应用性能等。 - **开源项目**: 得物可能将部分技术成果开源,供社区开发者学习和贡献。这不仅有助于提升品牌形象,还能吸引更多优秀人才加入。 #### 3. 示例代码 以下是一个简单的示例代码,展示如何通过 RESTful API 调用得物的商品搜索功能(假设接口已存在): ```python import requests def search_items(keyword, page=1): url = "https://api.dewu.com/v1/items/search" headers = { "Authorization": "Bearer YOUR_ACCESS_TOKEN", "Content-Type": "application/json" } params = { "keyword": keyword, "page": page, "size": 10 } response = requests.get(url, headers=headers, params=params) if response.status_code == 200: return response.json() else: return {"error": "Failed to fetch data"} # 调用示例 result = search_items("Air Jordan", page=1) print(result) ``` 此代码片段展示了如何通过 Python 请求得物的 API,并获取指定关键词的商品列表。 --- ###
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值