Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在Opencv中使用Canny边缘检测识别图像中的文本_Python_Opencv_Image Processing_Edge Detection_Text Recognition - Fatal编程技术网

Python 在Opencv中使用Canny边缘检测识别图像中的文本

Python 在Opencv中使用Canny边缘检测识别图像中的文本,python,opencv,image-processing,edge-detection,text-recognition,Python,Opencv,Image Processing,Edge Detection,Text Recognition,我正在尝试从彩色背景图像中提取文本。我正在尝试的一种方法是边缘检测。使用它,我将原始图像转换为可以使用的图像。这将消除图像中的所有颜色,只留下边缘 我使用此代码来获取边缘图像 import cv2 import numpy as np from matplotlib import pyplot as plt img = cv2.imread('messi5.jpg',0) edges = cv2.Canny(img,100,200) 我的问题是,在我得到这些图像后,我如何跟踪这些图像中的字母

我正在尝试从彩色背景图像中提取文本。我正在尝试的一种方法是边缘检测。使用它,我将原始图像转换为可以使用的图像。这将消除图像中的所有颜色,只留下边缘

我使用此代码来获取边缘图像

import cv2
import numpy as np
from matplotlib import pyplot as plt

img = cv2.imread('messi5.jpg',0)
edges = cv2.Canny(img,100,200)
我的问题是,在我得到这些图像后,我如何跟踪这些图像中的字母?任何帮助都会很好。谢谢你们

这些是原始图像和边缘检测图像

原始图像

边缘检测图像


您正处于一个涉及计算机视觉和机器学习概念的漫长过程的开始。这里有太多的东西要用一个简单、简洁的答案来解释。然而,有很多很好的资源可以在线完成这项工作(见下文):

python:

c++:
您正处于一个涉及计算机视觉和机器学习概念的漫长过程的开始。这里有太多的东西要用一个简单、简洁的答案来解释。然而,有很多很好的资源可以在线完成这项工作(见下文):

python:

c++:

在此图像上使用边缘检测为时过早,因为角色的边缘将被背景边缘污染

以下是通过选择接近白色的像素可以得到的结果:


有趣的是,许多发布类似问题的人认为边缘检测是灵丹妙药。在我看来,这通常是一种浪费,区域分割更合适。

在这张图像上使用边缘检测是不成熟的,因为角色的边缘会被背景的边缘污染

以下是通过选择接近白色的像素可以得到的结果:



有趣的是,许多发布类似问题的人认为边缘检测是灵丹妙药。在我看来,这通常是一种浪费,区域分割更合适。

非常感谢您,该图像非常生动,可能会被标记为不合适。您可能希望将其替换为图形较少的图像。此图显示了您想要解决的问题,但可能会冒犯或打扰许多用户。非常抱歉。我不是那个意思。这个怎么样?是的,那更可口。谢谢。非常感谢。这张图片非常生动,可能会被标记为不合适。您可能希望将其替换为图形较少的图像。此图显示了您想要解决的问题,但可能会冒犯或打扰许多用户。非常抱歉。我不是那个意思。这个怎么样?是的,那更可口。谢谢。这两个链接没有多大帮助。它们指的是这样的情况,即字符被隔离在干净的背景上,重点是识别,而OP显然面临着字符提取的问题。@BHawk学习img pro,并结合机器学习的基础知识,你能告诉我们从哪里开始吗?@Dev_Man我认为这本书是一个很好的起点:“使用Scikit学习和Tensorflow进行机器学习的实践”。它对许多不同的机器学习应用(图像处理和其他)进行了很好的介绍性概述您可以自己编写代码。如果您愿意学习ML,它还解释了ML背后的数学原理。这两个链接没有太大帮助。它们指的是在干净的背景下孤立字符,重点是识别,而OP显然面临字符提取问题。@BHawk学习img pro并与机器学习从最基本的开始,你能告诉我从哪里开始吗?@Dev_Man我认为一个很好的起点是这本书:“使用Scikit learn和Tensorflow实践机器学习”。它很好地介绍了许多不同的机器学习应用程序(图像处理和其他)您可以自己编写代码。如果您愿意学习ML,它还可以解释ML背后的数学。如果您可以共享代码,这将是一个很大的帮助。如果文本是不同颜色的,识别该文本是否会有问题?@我们很抱歉,不,这是一个商业软件。但这样的功能实现起来并不困难。@TharinduSenanayake:只要它与背景不同就行。如果你能分享代码,这将是一个很大的帮助。如果文本是不同颜色的,那么识别该文本是否会有问题?@thewaywewere抱歉,不,这是一个商业软件。但是这样的功能实现起来并不困难。@Tharindusenayake:只要它与背景不同就行背景。