本人是做医学影像设备的,最近在做一款X光片读取的机器。生产出厂检测时,需要检查一下读取的X光片图像的信噪比(SNR)。

1. 先说一下SNR检测的方法:

1)先拍一张X光片,机器读取光片,图像存在固定的目录

2)用ImageJ软件打开图像,选取10个不同的区域,分别求出10组不同区域的平均灰度值MEAN_AVERAGE和平均方根差STD_AVERAGE.

3)SNR = MEAN_AVERAGE/STD_AVERAGE

2. 使用宏实现1中的操作,修改StartupMacros.txt文件如下:

macro "SNR TEST" {
var area;
var mean;
var max;
var std;

var sum_area = 0;
var sum_mean = 0;
var sum_max = 0;
var sum_std = 0;
var SNR;

open("C:\\s2terminal\\image.dcm"); //打开图像文件
run("Grid ", "grid=Lines area=9 color=Cyan");

makeRectangle(152, 250, 98, 102);//选取第一个区域
getStatistics(area, mean, min, max, std, histogram);
sum_area = sum_area + area;
sum_mean = sum_mean + mean;
sum_min = sum_min + min;
sum_max = sum_max + max;
sum_std = sum_std +std;

makeRectangle(352, 250, 98, 98);//选取第2个区域
getStatistics(area, mean, min, max, std, histogram);
sum_area = sum_area + area;
sum_mean = sum_mean + mean;
sum_min = sum_min + min;
sum_max = sum_max + max;
sum_std = sum_std + std;

makeRectangle(552, 352, 100, 94);选取第3个区域
getStatistics(area, mean, min, max, std, histogram);
sum_area = sum_area + area;
sum_mean = sum_mean + mean;
sum_min = sum_min + min;
sum_max = sum_max + max;
sum_std = sum_std + std;

makeRectangle(352, 550, 98, 100);//选取第4个区域
getStatistics(area, mean, min, max, std, histogram);
sum_area = sum_area + area;
sum_mean = sum_mean + mean;
sum_min = sum_min + min;
sum_max = sum_max + max;
sum_std = sum_std + std;

makeRectangle(652, 550, 100, 104);//选取第5个区域
getStatistics(area, mean, min, max, std, histogram);
sum_area = sum_area + area;
sum_mean = sum_mean + mean;
sum_min = sum_min + min;
sum_max = sum_max + max;
sum_std = sum_std + std;

makeRectangle(352, 1052, 98, 94);选取第6个区域
getStatistics(area, mean, min, max, std, histogram);
sum_area = sum_area + area;
sum_mean = sum_mean + mean;
sum_min = sum_min + min;
sum_max = sum_max + max;
sum_std = sum_std + std;

makeRectangle(150, 852, 100, 98);//选取第7个区域
getStatistics(area, mean, min, max, std, histogram);
sum_area = sum_area + area;
sum_mean = sum_mean + mean;
sum_min = sum_min + min;
sum_max = sum_max + max;
sum_std = sum_std + std;

makeRectangle(352, 852, 98, 100);选取第8个区域
getStatistics(area, mean, min, max, std, histogram);
sum_area = sum_area + area;
sum_mean = sum_mean + mean;
sum_min = sum_min + min;
sum_max = sum_max + max;
sum_std = sum_std + std;

makeRectangle(550, 852, 102, 100);//选取第9个区域
getStatistics(area, mean, min, max, std, histogram);
sum_area = sum_area + area;
sum_mean = sum_mean + mean;
sum_min = sum_min + min;
sum_max = sum_max + max;
sum_std = sum_std + std;

makeRectangle(750, 950, 100, 98);//选取第10个区域
getStatistics(area, mean, min, max, std, histogram);
sum_area = sum_area + area;
sum_mean = sum_mean + mean;
sum_min = sum_min + min;
sum_max = sum_max + max;
sum_std = sum_std + std;

sum_mean = sum_mean/10;//mean_average
sum_std = sum_std/10;
SNR = (16383 - sum_mean)/sum_std;//std_average
sum_mean = 16383 - sum_mean;
print("16383 - sum_mean = "+sum_mean);
print("average std = "+sum_std);
print("SNR = "+SNR);

close();

}
  
  macro "About ImageJ Action Tool - C059T3e16S" {
doCommand("SNR TEST");
}

3. 重新启动软件,界面如下:

用户可以直接点击S键或者SNR TEST菜单,直接计算SNR.



使用ImageJ软件计算信噪比(SNR)的小工具相关推荐

  1. 桌面便利贴软件下载 电脑桌面便签小工具软件下载

    桌面便利贴和桌面便签软件,都是电脑上常用的记事工具.如果这两个工具都没有,我们有一些碎片信息需要记录的时候,就非常的麻烦.如果想要下载桌面便利贴软件或者电脑桌面便签小工具软件,该怎么办呢? 就拿Win ...

  2. 一个计算crc校验的小工具的编写。

    计算LPC校验 计算CRC8校验 计算CRC16校验 计算多种校验(没有分离单个界面显示) 可以作为平时使用的一个小工具 下载链接:https://download.csdn.net/download ...

  3. 电脑软件:巧用微软小工具解决日常问题!

    Win10操作系统在使用的过程中会遇到一些小问题,虽然很多用户已经通过各种途径向微软官方反应,但是这些问题基本都很难在短时间内解决.其实大家可以通过微软已有的解决其他问题的小工具,来快速有效解决自己在 ...

  4. Cartoon Animator动画制作软件CTA自动保存项目小工具

    大家都知道Cartoon Animator动画软件总是会无辜闪退 好不容易K了很多帧,然后崩溃立马回到解放前. 做了这个小工具暂时解决一下燃眉之急!!!! 下载地址: https://download ...

  5. python做游戏用什么软件_Python 与游戏测试 (小工具篇)

    最近在TesterHome游戏测试群里,有时候会看到有童鞋问,游戏测试人员学了Python,可以干点什么. 很多童鞋初学Python,学习了语法和基础类库后,开始迷茫如何实际使用到工作中去,其实Pyt ...

  6. python图片裁剪软件_python 实现图片裁剪小工具

    实现:tkinter 画布上显示图片,按下鼠标左键并且移动,实现截图 # -*- encoding=utf-8 -*- import os import tkinter as tk from PIL ...

  7. 多分类任务计算 TopK 准确率的小工具——topk(pytorch)

    pytorch中的topk函数 在扒 "cifar100套装" 代码的时候发现test函数里面有这样一个函数: _, pred = output.topk(5, 1, larges ...

  8. 信杂比公式_关于信噪比SNR【转载】

    1.http://well3216.blog.sohu.com/96624202.html 看到很多朋友都在谈论信噪比这个概念,正好前段时间学到了这个,特此拿出来班门弄斧一下. 信噪比--SNR(有时 ...

  9. python语音计算信噪比

    import numpy as np import librosa#计算信噪比 def SNR_singlech(clean_file, original_file):clean, clean_fs ...

  10. 电脑桌面便签小工具哪款免费又好用

    日常办公中,电脑上离不开一款好用的桌面便签小工具,便签可以帮助大家记录备忘,且可以随时提醒大家按时完成各项任务,但在选择电脑桌面便签软件时,大家更青睐于选择一些免费且又好用的便签软件. 电脑桌面便签小 ...

最新文章

  1. 漫画:我用深度学习框架画下女朋友最美的脸
  2. linux设备驱动之总线、设备、驱动
  3. 分布式系统架构知识储备
  4. Lua——循环和流程控制(if,for,while,break,goto,repeat...until)
  5. 记一次ORM的权衡和取舍
  6. CodeForces-999D Equalize the Remainders (贪心+神奇的STL)
  7. 【英语学习】【Daily English】U09 Fashion L01 Which one do you think suits me better?
  8. HBase之HFile详解
  9. 记载abp中Dbcontext的疑问
  10. 那年学过的Quartz框架笔记
  11. Python的Lock对象和Condition对象对比
  12. Python 分析猴子吃桃子问题!
  13. 学生物的女朋友都能看懂的哈希表总结!
  14. kubernetes视频教程笔记 (22)-存储-Secret
  15. 联想计算机wifi卸载,win10联想笔记本电脑wifi功能消失了怎么办
  16. c语言74hc595程序,74hc595使用方法与单片机驱动源程序
  17. [UE5 C++] 免费安装JetBrains Mono字体至IDE
  18. 笔记本二合一计算机,笔记本界的“变形金刚”:盘点三款值得购买的二合一笔记本电脑 - 全文...
  19. springboot毕设项目创新创业管理系统1f90r(java+VUE+Mybatis+Maven+Mysql)
  20. 计算机网络相关问题解答

热门文章

  1. sql server2000的1433端口不通怎么办
  2. 乐理基础-曲谱、简谱、音名、唱名、调、调号
  3. 风力摆控制系统2015年全国大学生电子设计竞赛B题
  4. 一文足矣:Unity行为树
  5. Linux 网络配置
  6. 小米4c android5.1,奇兔刷机全网独家攻破小米4c安卓5.1支持一键刷机ROOT
  7. Netapp存储 硬盘显示bad label的解决办法
  8. div 垂直居中的六种方法
  9. 楼宇跨界智能家居未来前景如何有待考证
  10. Mugeda(木疙瘩)H5案例课—什么,才是福-岑远科-专题视频课程