本文整理汇总了Java中javax.media.jai.KernelJAI.getRotatedKernel方法的典型用法代码示例。如果您正苦于以下问题:Java KernelJAI.getRotatedKernel方法的具体用法?Java KernelJAI.getRotatedKernel怎么用?Java KernelJAI.getRotatedKernel使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类javax.media.jai.KernelJAI
的用法示例。
在下文中一共展示了KernelJAI.getRotatedKernel方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: create
import javax.media.jai.KernelJAI; //导入方法依赖的package包/类
/**
* Create a new instance of ErodeOpImage in the rendered layer.
* This method satisfies the implementation of RIF.
*
* @param paramBlock The source image and the erosion kernel.
*/
public RenderedImage create(ParameterBlock paramBlock,
RenderingHints renderHints) {
// Get ImageLayout from renderHints if any.
ImageLayout layout = RIFUtil.getImageLayoutHint(renderHints);
// Get BorderExtender from renderHints if any.
BorderExtender extender = RIFUtil.getBorderExtenderHint(renderHints);
KernelJAI unRotatedKernel =
(KernelJAI)paramBlock.getObjectParameter(0);
KernelJAI kJAI = unRotatedKernel.getRotatedKernel();
RenderedImage source = paramBlock.getRenderedSource(0);
SampleModel sm = source.getSampleModel();
// check dataType and binary
int dataType = sm.getDataType();
boolean isBinary = (sm instanceof MultiPixelPackedSampleModel) &&
(sm.getSampleSize(0) == 1) &&
(dataType == DataBuffer.TYPE_BYTE ||
dataType == DataBuffer.TYPE_USHORT ||
dataType == DataBuffer.TYPE_INT);
// possible speed up later: 3x3 with table lookup
if (isBinary){
return new ErodeBinaryOpImage(source,
extender,
renderHints,
layout,
kJAI);
}else{
return new ErodeOpImage(source,
extender,
renderHints,
layout,
kJAI);
}
}
示例2: create
import javax.media.jai.KernelJAI; //导入方法依赖的package包/类
/**
* Create a new instance of UnsharpMaskOpImage in the rendered layer.
* This method satisfies the implementation of RIF.
*
* @param paramBlock The source image, the unsharp mask kernel and
* the gain factor.
*/
public RenderedImage create(ParameterBlock paramBlock,
RenderingHints renderHints) {
// Get ImageLayout from renderHints if any.
ImageLayout layout = RIFUtil.getImageLayoutHint(renderHints);
// Get BorderExtender from renderHints if any.
BorderExtender extender = RIFUtil.getBorderExtenderHint(renderHints);
// map the input kernel + gain factor to an equivalent
// convolution kernel and then do a normal convolve.
KernelJAI unRotatedKernel =
ImageUtil.getUnsharpMaskEquivalentKernel(
(KernelJAI)paramBlock.getObjectParameter(0),
paramBlock.getFloatParameter(1));
KernelJAI kJAI = unRotatedKernel.getRotatedKernel();
RenderedImage source = paramBlock.getRenderedSource(0);
int dataType = source.getSampleModel().getDataType();
boolean dataTypeOk = (dataType == DataBuffer.TYPE_BYTE ||
dataType == DataBuffer.TYPE_SHORT ||
dataType == DataBuffer.TYPE_INT);
if ((kJAI.getWidth() == 3) && (kJAI.getHeight() == 3) &&
(kJAI.getXOrigin() == 1) && (kJAI.getYOrigin() == 1) && dataTypeOk) {
return new Convolve3x3OpImage(source,
extender,
renderHints,
layout,
kJAI);
} else if (kJAI.isSeparable()) {
return new SeparableConvolveOpImage(source,
extender,
renderHints,
layout,
kJAI);
} else {
return new ConvolveOpImage(source,
extender,
renderHints,
layout,
kJAI);
}
}
示例3: create
import javax.media.jai.KernelJAI; //导入方法依赖的package包/类
/**
* Create a new instance of ConvolveOpImage in the rendered layer.
* This method satisfies the implementation of RIF.
*
* @param paramBlock The source image and the convolution kernel.
*/
public RenderedImage create(ParameterBlock paramBlock,
RenderingHints renderHints) {
// Get ImageLayout from renderHints if any.
ImageLayout layout = RIFUtil.getImageLayoutHint(renderHints);
// Get BorderExtender from renderHints if any.
BorderExtender extender = RIFUtil.getBorderExtenderHint(renderHints);
KernelJAI unRotatedKernel =
(KernelJAI)paramBlock.getObjectParameter(0);
KernelJAI kJAI = unRotatedKernel.getRotatedKernel();
int dataType =
paramBlock.getRenderedSource(0).getSampleModel().getDataType();
boolean dataTypeOk = (dataType == DataBuffer.TYPE_BYTE ||
dataType == DataBuffer.TYPE_SHORT ||
dataType == DataBuffer.TYPE_INT);
if (kJAI.getWidth() == 3 && kJAI.getHeight() == 3 &&
kJAI.getXOrigin() == 1 && kJAI.getYOrigin() == 1 &&
dataTypeOk) {
return new Convolve3x3OpImage(paramBlock.getRenderedSource(0),
extender,
renderHints,
layout,
kJAI);
} else if (kJAI.isSeparable()) {
return new SeparableConvolveOpImage(paramBlock.getRenderedSource(0),
extender,
renderHints,
layout,
kJAI);
} else {
return new ConvolveOpImage(paramBlock.getRenderedSource(0),
extender,
renderHints,
layout,
kJAI);
}
}
示例4: create
import javax.media.jai.KernelJAI; //导入方法依赖的package包/类
/**
* Create a new instance of DilateOpImage in the rendered layer.
* This method satisfies the implementation of RIF.
*
* @param paramBlock The source image and the dilation kernel.
*/
public RenderedImage create(ParameterBlock paramBlock,
RenderingHints renderHints) {
// Get ImageLayout from renderHints if any.
ImageLayout layout = RIFUtil.getImageLayoutHint(renderHints);
// Get BorderExtender from renderHints if any.
BorderExtender extender = RIFUtil.getBorderExtenderHint(renderHints);
KernelJAI unRotatedKernel =
(KernelJAI)paramBlock.getObjectParameter(0);
KernelJAI kJAI = unRotatedKernel.getRotatedKernel();
RenderedImage source = paramBlock.getRenderedSource(0);
SampleModel sm = source.getSampleModel();
// check dataType and binary
int dataType = sm.getDataType();
boolean isBinary = (sm instanceof MultiPixelPackedSampleModel) &&
(sm.getSampleSize(0) == 1) &&
(dataType == DataBuffer.TYPE_BYTE ||
dataType == DataBuffer.TYPE_USHORT ||
dataType == DataBuffer.TYPE_INT);
// possible speed up later: 3x3 with table lookup
if (isBinary){
return new DilateBinaryOpImage(source,
extender,
renderHints,
layout,
kJAI);
}else{
return new DilateOpImage(source,
extender,
renderHints,
layout,
kJAI);
}
}