小编The*_*nce的帖子

Java中的图像处理边缘检测

这是我的情况.它涉及对齐扫描图像,这将导致不正确的扫描.我必须将扫描的图像与我的Java程序对齐.

这些是更多细节:

  • 在一张纸上印有一个类似表格的表格,将其扫描成图像文件.
  • 我将用Java打开图片,我将有一个OVERLAY文本框.
  • 文本框应与扫描图像正确对齐.
  • 为了正确对齐,我的Java程序必须分析扫描图像并检测扫描图像上表格边缘的坐标,从而定位图像和文本框,使文本框和图像都正确对齐(以防万一)不正确的扫描)

你看,扫描图像的人可能不一定将图像放在一个完全正确的位置,所以我需要我的程序在加载时自动对齐扫描图像.这个程序可以在许多这样的扫描图像上重复使用,所以我需要这个程序灵活.

我的问题是以下之一:

  1. 如何使用Java检测表格上边缘的y坐标和表格最左边缘的x坐标.桌子是一张普通的桌子,有许多单元格,黑色薄边框,印在白纸上(水平打印输出)

  2. 如果存在一种更简单的方法来自动对齐扫描图像,使得所有扫描图像都将图形表对齐到相同的x,y坐标,则共享此方法:).

  3. 如果您不知道上述问题的答案,请告诉我应该从哪里开始.我不太了解图形java编程,我有大约1个月的时间来完成这个程序.假设我有一个紧张的时间表,我必须让我的图形部分尽可能简单.

干杯谢谢你.

java image-processing

6
推荐指数
2
解决办法
2万
查看次数

如何从Windows中的C++程序执行另一个exe

我希望我的C++程序在Windows中执行另一个.exe.我该怎么做?我正在使用Visual C++ 2010.

这是我的代码

#include "stdafx.h"
#include <iostream>

using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
    unsigned int input;
    cout << "Enter 1 to execute program." << endl;
    cin >> input;
    if(input == 1) /*execute program here*/;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ windows

5
推荐指数
4
解决办法
5万
查看次数

java ImageIO.read()中的内存泄漏

我正在使用ImageIO.read().由原始App的main方法调用的类是:

import java.awt.*;
import javax.swing.*;
import java.io.File;
import java.awt.image.BufferedImage;
import java.awt.event.*;
import javax.swing.JPanel;

class ImageGenerator extends JPanel{

JpegReader jpeg;

public ImageGenerator(Aplicacion a){
    jpeg = new JpegReader();
    loadImage();

}


private void loadImage(){
    String path = "C:\\image.jpg";
    image = new BufferedImage(100,100, BufferedImage.TYPE_INT_RGB); //in case error
    try{
        image = jpeg.readImage(new File(path));
    }catch(Exception e){
        System.err.println(e.getMessage());
    }
}
public void paint(Graphics g){

    Graphics2D g2 = (Graphics2D) g;
    g2.setRenderingHint(RenderingHints.KEY_INTERPOLATION,
            RenderingHints.VALUE_INTERPOLATION_BICUBIC);
    g2.drawImage(image, 0, 0, 1000, 800, null);
}

}
Run Code Online (Sandbox Code Playgroud)

我正在使用上面的这个其他类JpegReader,我实际上在StackOverflow上找到了答案,但我忘了引用他的作者的名字.

import java.awt.image.BufferedImage;
import javax.imageio.*;
import javax.imageio.stream.ImageInputStream;
import …
Run Code Online (Sandbox Code Playgroud)

java memory-leaks

5
推荐指数
1
解决办法
3566
查看次数

查找标准 JScrollBar 宽度或高度

我正在尝试将一个组件放置在窗口的一角。但是,我的窗口有一个滚动条,并且滚动条放置在组件的顶部。

因此,我尝试更改组件的位置,使其与滚动条相邻,而不是位于滚动条下方。

因此,我需要滚动条的标准宽度(垂直)和滚动条的标准高度(水平)。

我可以在运行时尝试 getVerticalScrollBar.getWidth() ,但不幸的是我需要在创建滚动条本身之前放置坐标。

另外,创建一个空的 JScrollBar 并调用 getWidth() 将返回 0。

感谢您的帮助。

java swing jscrollbar preferredsize

5
推荐指数
2
解决办法
5295
查看次数

Visual Studio 2010文件 - >新建 - >项目灰显

我创建了Win32项目的解决方案.

然后我点击File-> New-> Project并创建了一个新的Win32项目,但是将项目添加到当前解决方案中,这样我就可以在解决方案资源管理器中看到这两个项目.(因为据我所知,Visual Studio一次只能显示一个解决方案).

现在我正在尝试为解决方案创建第三个项目,但是当我转到File-> New-> Project时,此选项显示为灰色.

这里发生了什么?我该如何解决?我想要的是能够在解决方案资源管理器中拥有许多项目,并且我尝试通过将项目添加到当前解决方案来实现.

c++ visual-studio-2010

4
推荐指数
1
解决办法
1786
查看次数

你能破解jar文件中的system.out.println()吗?

我有一个可执行的jar文件.java代码包含很多System.out.println语句.有时,这些打印语句包含密码和类似的东西.

我编译成一个可执行jar.没有显示控制台.我正在考虑为安全目的删除所有System.out.println语句,但由于没有控制台可能没有必要吗?

我的问题是可以攻击System.out.println().换句话说,使用jar文件的人可以获得System.out.println打印出来的内容

java

2
推荐指数
1
解决办法
494
查看次数

JLayeredPane 不尊重图层

我有一个 JLayeredPane。我的程序是这样工作的:

JPanel p1 = new JPanel(new BoxLayout(p1, BoxLayout.X_AXIS));
JPanel p2 = new JPanel(new BoxLayout(p2, BoxLayout.Y_AXIS));
JLayeredPane lp = new JLayeredPane();
lp.add(p1, 1);
lp.add(p2, 0);
Run Code Online (Sandbox Code Playgroud)

p1 和 p2 都有按钮等组件...

问题是,当我将两个 JPanel 添加到 JLayeredPane 时,什么也没有出现。

我尝试更改 JLayeredPane() 的布局。

例如,我做了:

lp.setLayout(new BoxLayout(lp, BoxLayout.X_AXIS));
Run Code Online (Sandbox Code Playgroud)

然后,JPanels 确实显示,但它们显示为相邻,不尊重 JLayeredPane 的层。

我是否被迫使用空布局?

如何让我的 JLayeredPane 尊重图层并正确显示我的两个 BoxLayout JPanel?

当我给我的 JLayeredPane 一个布局时,它会显示面板,但它根本不尊重图层。

java swing layout-manager jlayeredpane null-layout-manager

1
推荐指数
1
解决办法
2062
查看次数