小编Zy0*_*y0n的帖子

从图像中删除背景噪音,使OCR的文字更清晰

我编写了一个应用程序,根据文本区域对图像进行分割,并根据需要提取这些区域.我试图做的是清洁图像,以便OCR(Tesseract)给出准确的结果.我将以下图像作为示例:

在此输入图像描述

通过tesseract运行此结果会产生广泛不准确的结果.然而,清理图像(使用photoshop)获取图像如下:

在此输入图像描述

给出我期望的结果.第一个图像已经通过以下方法运行,以清除它到那一点:

 public Mat cleanImage (Mat srcImage) {
    Core.normalize(srcImage, srcImage, 0, 255, Core.NORM_MINMAX);
    Imgproc.threshold(srcImage, srcImage, 0, 255, Imgproc.THRESH_OTSU);
    Imgproc.erode(srcImage, srcImage, new Mat());
    Imgproc.dilate(srcImage, srcImage, new Mat(), new Point(0, 0), 9);
    return srcImage;
}
Run Code Online (Sandbox Code Playgroud)

我还能做些什么来清理第一张图像,使其类似于第二张图像?

编辑:这是在运行该cleanImage功能之前的原始图像.

在此输入图像描述

c++ java ocr opencv

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

资源解释为图像,但使用MIME类型text/html,curl,php进行传输

我收到了这个我以前没见过的错误.我正在使用cURL尝试从我的网站获取验证码图像,但我得到此错误而不是我想要的图像.

if(isset($_GET['captcha'])) {
 $curl->open("GET","https://mydomain.com");
 $curl->exec();

 preg_match('/_mobile_sess=[^;]+/', $curl->getHeaders(), $sess);
 $_SESSION['cookie'] = $sess[0]; 

 preg_match('/ame="authenticity_token" type=\"hidden\" value=\"(.+?)\"/i',$curl->responseText, $tkn);

 $_SESSION['token'] = $tkn[1];
 preg_match('/\/signup\/captcha\/([0-9-a-z]+)\.gif/i', $curl->responseText, $cs);
 $_SESSION['captchaUrl'] = $cs[1];

 $curl->open("GET", "http://mydomain.com" . $cs[0]);
 $curl->cookie = $_SESSION['cookie'];
 $curl->exec();
 echo $curl->responseText;

 die;
Run Code Online (Sandbox Code Playgroud)

}

我已经将MIME类型设置<meta http-equiv="Content-Type" content="image/gif">为我的HTML文档,但仍然会遇到同样的问题.

这是我试图输出图像的形式.

if(empty($_SERVER['QUERY_STRING'])){
  echo "<center><form method='POST' action='?go'>
  <input  type='hidden' name='nameC' value='- SAFAL -' ><br/>
  <b>User Name</b><br><input name='login' size='30' id='login'    value='safal".rand(111111,9999999)."'><br/>
 <b>Password</b><br><input name='senha' id='senha' size='30' value='".rand()."'><br/>  <br>
 <img src='?captcha'><br/>
 <input name='cs' id='cs' placeholder='Put The Capcha' size='20'  onclick='if(this.value==\"Digite aqui\") this.value=\"\"'><br><br><br>
 <input type='submit' …
Run Code Online (Sandbox Code Playgroud)

php curl mime-types

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

问题在负方向绘制矩形 - Java

我在尝试从屏幕上单击的点向负方向绘制矩形时遇到问题。我有以下类来模拟 Gyazo 之类的屏幕捕获软件:

class DrawSquare extends JPanel implements MouseListener, MouseMotionListener {

// Components
public JDialog frame;
public Rectangle rectangle;
public BufferedImage bufferedImage;
public Point start, end;

// Variables
public String capturedImage;

public DrawSquare(JDialog frame) {

    this.frame = frame;

    // Read in crosshair image to replace mouse icon
    Toolkit tool = Toolkit.getDefaultToolkit();
    Image newImage = getToolkit().getImage("components/cursor.png");
    Cursor cursor = tool.createCustomCursor(newImage, new Point (this.frame.getX(), this.frame.getY()), "img");

    this.frame.setCursor(cursor);
    this.frame.addMouseListener(this);
    this.frame.addMouseMotionListener(this);

}

@Override
public void paintComponent(Graphics g) {
    super.paintComponent(g);

    Graphics2D g2d = (Graphics2D) g.create(); …
Run Code Online (Sandbox Code Playgroud)

java jframe jdialog paintcomponent

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

标签 统计

java ×2

c++ ×1

curl ×1

jdialog ×1

jframe ×1

mime-types ×1

ocr ×1

opencv ×1

paintcomponent ×1

php ×1