我正在处理图像中的分类对象。
我正在使用Marvin Image Processing Framework,并且我成功分割了对象,但我想在图像上插入文本
这是我的图像分割的输出,我想按条件在对象上方绘制文本。
例如,我编写了计算每个矩形的平均对角线的函数,如果矩形的对角线大于平均值,则插入“螺栓”。
但是,我找不到任何使用 Marvin 图像处理框架插入文本的方法。
这是我的代码的一部分:
public Recognition() {
MarvinImage input = MarvinImageIO.loadImage("Parts1.jpg");
MarvinImage copy = input.clone();
filterBlue(copy);
MarvinImage bin = MarvinColorModelConverter.rgbToBinary(copy, 127);
morphologicalClosing(bin.clone(), bin, MarvinMath.getTrueMatrix(30, 30));
copy = MarvinColorModelConverter.binaryToRgb(bin);
MarvinSegment[] marvSeg = floodfillSegmentation(copy);
calculateAvg(marvSeg);
for(int i = 1; i < marvSeg.length; i++)
{
MarvinSegment segment = marvSeg[i];
input.drawRect(segment.x1, segment.y1, segment.width, segment.height, Color.ORANGE);
input.drawRect(segment.x1+1, segment.y1+1, segment.width, segment.height, Color.ORANGE);
if (calcDiag(segment.width, segment.height) > recDiagonalAverage)
{
//draw string "bolt" if current diagonal is larger than average
}
}
MarvinImageIO.saveImage(input, "output.jpg");
}
如果我没有任何方法可以使用 Marvin 图像处理框架插入,我如何使用这些代码插入文本?