Я использую OpenImaj для проекта, и мне нужно отображать видео в 800 * 600 на панели, но я должен снимать изображения с 1920 года1080, когда я нажимаю кнопку.Как изменить размер изображения в панели с помощью OpenImaj
Моя стратегия была первоначально захвачена с моей веб-камеры в 1920 году1080 и для изменения размера изображения в значке ярлыка, содержащегося в моей панели видео.
Моя проблема в том, что производительность очень низкая.
Есть ли эффективный способ изменения размера видео в соответствии с размером панели видео без изменения размера кадра (который я использую для сохранения изображения в 1920, 1080)? Благодарим вас за ответ. С уважением.
final VideoCapture vc = new VideoCapture(1920,1080);
vc.setFPS(10);
final VideoDisplay<MBFImage> display = VideoDisplay.createVideoDisplay(vc, panelVideo);
display.addVideoListener(new VideoDisplayAdapter<MBFImage>()
{
@Override
public void beforeUpdate(final MBFImage frame)
{
//here I create a bufferedImage from the resized frame
BufferedImage img = new BufferedImage(800, 600, BufferedImage.TYPE_INT_ARGB);
Graphics2D g = (Graphics2D) img.getGraphics();
g.drawImage(ImageUtilities.createBufferedImageForDisplay(frame), 0, 0, 800, 600, null);
//here is the label that I use to display the video
labelVideo.setIcon(new ImageIcon(ImageUtilities.createBufferedImageForDisplay(frame)));
}
});
Благодарим вас за ответ. До сих пор я тестировал BilinearInterpolation, и производительность была еще плохая. –