Java中调用ImageJ,与直接使用ImageJ处理所得图片黑白颠倒的问题

对图片做自动阈值二值化的时候遇到了这个问题,代码如下:

ImagePlus image = new ImagePlus(imagePath);
WindowManager.setTempCurrentImage(image);
IJ.setAutoThreshold(image, "Default dark");
IJ.run("Convert to Mask");
IJ.saveAs("PNG", savePath + "/threshold.png");

最后得到的图片非常奇怪,白色竟然对应了灰度值0,黑色对应255,导致整张图片黑白颠倒。刚开始硬着头皮往下做,后来发现因为这个灰度值对应情况反常会导致很多问题。
经过头秃的Debug后终于发现问题出在Convert to Mask这个功能上(原文链接:弟球嗑学-ImageJ Binary(二进制)):

使用ImageJ软件时会默认勾选这一项,但是使用Java调用的时候需要手动设置,在使用Convert to Mask前加一句设置Options就行了。

IJ.run("Options...", "iterations=1 count=1 black do=Nothing");
IJ.run("Convert to Mask");

ImageJ国内社区和中文资料还是太少了,使用过程踩了不少坑,记录一下希望可以帮到其他朋友。

Java中调用ImageJ,与直接使用ImageJ软件处理所得图片黑白颠倒的问题相关推荐

  1. java中调用python

    在Java中调用Python </h1><div class="clear"></div><div class="postBod ...

  2. 在Java中调用Python

    写在前面 参考:https://www.cnblogs.com/nuccch/p/8435693.html 在微服务架构大行其道的今天,对于将程序进行嵌套调用的做法其实并不可取,甚至显得有些愚蠢.当然 ...

  3. 如何在java中调用js方法

    [java] view plain copy/* * 加载脚本引擎,并在java中调用js方法 */ public void test2() { ScriptEngineManager manager ...

  4. java 中调用 Matlab 的函数

    一.matlab版本必须支持java 在command 模式下面运行deploytool,如果支持该命令即可使用 二.matlab中function的书写 %定义一个函数operation(a,b), ...

  5. java执行python脚本_使用Runtime.getRuntime().exec()在java中调用python脚本

    举例有一个Python脚本叫test.py,现在想要在Java里调用这个脚本.假定这个test.py里面使用了拓展的包,使得pythoninterpreter之类内嵌的编译器无法使用,那么只能采用ja ...

  6. java 调用 go_实践总结:在 Java 中调用 Go 代码

    在 Java 中调用 Go 的大致过程如下go --> cgo --> jna --> java 整个过程要解决的问题主要两个:数据类型在两种语言中如何转化 何时清理无用的数据 下面 ...

  7. java oracle sql 参数_oracle pl/sql之在java中调用带有输入输出参数的oracle存储过程...

    只需注意一点输出参数是用CallableStatement里面的registerOutParameter方法注册进去 存储过程: import java.sql.CallableStatement; ...

  8. 如何通过JNI在Java中调用C库函数

    使用Java语言进行开发时,可能由于处理速度.硬件控制或者复用既有的C/C++模块等方面的原因,需要Java层与使用C/C++编写的应用.模块或库进行交互,共同完成某些任务.在两者之间充当连接桥梁作用 ...

  9. 在Java中调用Python,java面试题,java初级笔试题

    写在最前面,我总结出了很多互联网公司的面试题及答案,并整理成了文档,以及各种学习的进阶学习资料,免费分享给大家.扫码加微信好友进[程序员面试学习交流群],免费领取.也欢迎各位一起在群里探讨技术. 写在 ...

最新文章

  1. 机器人抓取领域性能评估标准
  2. cocos2dx android protobuf,Quick_Cocos2d_x V3.3 Protobuf Android
  3. 使用node.js进行API自动化回归测试
  4. 使用C#调用Python脚本,带参数列表
  5. nginx 301重定向带www的https链接配置方法
  6. mnist 数据集的识别源码解析
  7. 【Nodejs】记一次图像识别的冒险
  8. 【数据结构】B树的理解
  9. 项目从0到1避坑指南
  10. python降维可视化 自编码_如何使用自动编码器可视化降维? (Python | TensorFlow)...
  11. 开发常见错误之 :Missing artifact com.sun:tools:jar 1.7.0
  12. css模块化配置---webpack4+less
  13. 大肇庆!这里不愧是“黑客教父”郭盛华的故乡,人杰地灵,景色优美
  14. HTML 空格转义符的用法
  15. 在Sun新解决方案中心亲历虚拟化(多图)
  16. 希尔伯特变换与三瞬属性简介
  17. 搜集了一些AIDA64的GPGPU测试结果,现整理成表格共享
  18. 04 Convex problem凸优化问题
  19. 中通快递api,中通快递一件代发api,中通快递礼品商城api,中通快递空包api
  20. php分割金额_PHP实现红包金额拆分算法案例详解

热门文章

  1. 58点击软件奔奔_一款强大的私人内容隐藏保护软件,你可以将你所有的隐私加密...
  2. 使用laravel+Laravel-Roles-Permissions 开发后台权限管理
  3. Java 如何模拟真正的并发请求?
  4. 分享 | 会 Python 的人究竟怎么炒股?
  5. 多图详解uefi+gpt安装win10系统,再也不用求人了!
  6. 项目开发(质检督查)
  7. 贪心算法——旅行家的预算(NOIP1999)
  8. 部署vue element-ui admin报错(vue2)
  9. C#BS通过ActiveX控件及制作CAB包来调CS
  10. 百度推广降低成本获得更多优质流量!