You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Beanshell中调用图片?ImageJ直方图匹配代码运行报错求助

ImageJ Beanshell直方图匹配代码报错解决方案

报错根因

  • 你当前的报错Encountered "( 6 th"属于语法解析错误,原因是你复制代码时意外将额外的无关字符(比如原代码旁的注释序号、排版标记)带入了代码行,导致Beanshell解析器无法识别getProcessor的调用格式。
  • 另外你用到的HistogramMatcher属于第三方Histogram2插件的类,ImageJ默认不内置,未安装该插件的话修正语法后也会触发类不存在的报错。

修正后可直接运行的代码

import ij.IJ;
import histogram2.HistogramMatcher;

// 获取第一张图像
imp1 = IJ.openImage("http://imagej.nih.gov/ij/images/bridge.gif");
// 获取第二张图像
imp2 = IJ.openImage("http://imagej.nih.gov/ij/images/boats.gif");

ip1 = imp1.getProcessor();
ip2 = imp2.getProcessor();

hist1 = ip1.getHistogram();
hist2 = ip2.getHistogram();

matcher = new HistogramMatcher();
newHist = matcher.matchHistograms(hist1, hist2);

ip1.applyTable(newHist);
imp1.setProcessor(ip1);

imp1.show();
imp2.show();
// 显示两张图像的直方图
IJ.run(imp1, "Histogram", "");
IJ.run(imp2, "Histogram", "");

操作说明

  • 先安装Histogram2插件:打开ImageJ→Plugins→Install,选择对应插件安装后重启ImageJ
  • 清空脚本编辑器原有内容,完整复制上述代码粘贴,不要夹带其他额外字符
  • 脚本语言选择Beanshell,点击运行即可完成两张图像的直方图匹配,自动弹出原图和对应直方图窗口。

内容的提问来源于stack exchange,提问作者Aidin Barabi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 07:06:03