我正在尝试对扫描文档进行OCR,其中包含手写签名.见下图.
我的问题很简单,有没有办法在忽略签名的同时使用OCR提取人名?当我运行Tesseract OCR时,它无法检索名称.我尝试使用下面的代码进行灰度/模糊/阈值处理,但没有运气.有什么建议?
image = cv2.imread(file_path)
image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
image = cv2.GaussianBlur(image, (5, 5), 0)
image = cv2.threshold(image, 0, 255, cv2.THRESH_BINARY_INV | cv2.THRESH_OTSU)[1]
Run Code Online (Sandbox Code Playgroud) 我使用PyInstaller从Python脚本构建了一个EXE文件
pyinstaller --onefile myscript.py
Run Code Online (Sandbox Code Playgroud)
我用的包:
pandas, numpy, imutils, opencv, logging, os, random, json, string, csv, datetime, uuid
Run Code Online (Sandbox Code Playgroud)
EXE在我的电脑上正常运行.但是,当我在另一台PC上尝试时,我会收到此屏幕截图中显示的错误:https://www.screencast.com/t/msZrURL4v
知道问题是什么吗?
我正在尝试使用Pandas和scikit-learn在Python中执行分类。我的数据集包含文本变量,数字变量和分类变量的混合。
假设我的数据集如下所示:
Project Cost Project Category Project Description Project Outcome
12392.2 ABC This is a description Fully Funded
493992.4 DEF Stack Overflow rocks Expired
Run Code Online (Sandbox Code Playgroud)
而且我需要预测变量Project Outcome。这是我所做的(假设df包含我的数据集):
我转换的类别Project Category和Project Outcome以数值
df['Project Category'] = df['Project Category'].factorize()[0]
df['Project Outcome'] = df['Project Outcome'].factorize()[0]
Run Code Online (Sandbox Code Playgroud)数据集现在看起来像这样:
Project Cost Project Category Project Description Project Outcome
12392.2 0 This is a description 0
493992.4 1 Stack Overflow rocks 1
Run Code Online (Sandbox Code Playgroud)
然后我使用处理了文本列 TF-IDF
tfidf_vectorizer = TfidfVectorizer()
df['Project Description'] = tfidf_vectorizer.fit_transform(df['Project Description'])
Run Code Online (Sandbox Code Playgroud)数据集现在看起来像这样: …
因此,我在 Firebase 上托管了一个 Angular 9 应用程序,并使用 Firestore 存储数据。我有一个看起来很简单的问题,但我无法理解它为什么会发生。我已经对应用程序进行了大量简化,以找到导致此问题的根本原因,并将尝试在下面尽可能详细地解释该问题。
该应用程序:我有 2 个页面,一个主页和一个交易页面。两个页面都从同一个 Firebase 集合“交易”中读取。但是,在主页上,我想显示 4 个最近的交易(按日期排序,降序),而在交易页面上,我想显示 10 个最有利可图的交易(按金额排序,降序)。目前,我只是将数据记录到控制台进行调试。在记录数据之前,我还对其进行了轻微的操作(参见下面的代码)。
问题:当我在主页上开始时,我可以在控制台中按预期看到我最近的 4 个交易。但是,当我转到“交易”页面时,它会再次在控制台中记录 4 个最近的交易,这些交易应该只显示在主页上。大约一秒钟后,它会显示预期的 10 个最有利可图的交易。
代码:这是我的 home.page.ts 代码:
txSubscription: Subscription;
constructor(
public afAuth: AngularFireAuth,
private readonly firestore: AngularFirestore
) { }
// Function to get the 4 most recent transactions
async getRecentTransactions() {
this.txSubscription = this.firestore
.collection('transactions', ref => ref.orderBy('date', 'desc').limit(4))
.valueChanges()
.subscribe(rows => {
this.recentTransactions = [];
rows.forEach(row => {
let jsonData = {};
jsonData['ticker'] = (row['ticker'].length …Run Code Online (Sandbox Code Playgroud) javascript firebase typescript angular google-cloud-firestore
我正在使用Python 3.6,并且缺少“使用IDLE编辑”选项。我在Stack Overflow和其他网站上阅读了许多有关编辑注册表的主题,但是没有任何效果。我已经完全重新安装了Python 3.6,也尝试了Python 2.7,但我再也没有安装该选项了。有任何想法吗?
我有一个 Ionic 应用程序,使用离子菜单来打开汉堡菜单。但是,我不想让背景位于右侧,如屏幕截图所示:
我想要的是这个(没有背景):
离子菜单:
<ion-menu side="start" type="push" menuId="first" contentId="main" class="burger-menu">...</ion-menu>
Run Code Online (Sandbox Code Playgroud)
我已经尝试过 CSS 中的所有内容:
.burger-menu {
// Doesn't work
--backdrop: none !important;
backdrop-filter: none !important;
}
// Doesn't work
ion-menu#backdrop {
display: none !important;
}
// Doesn't work
ion-menu > ion-backdrop {
display: none !important;
}
// Doesn't work
ion-backdrop.menu-backdrop {
display: none !important;
}
// Doesn't work
:host(.menu-type-push) .show-backdrop {
display: none !important;
}
Run Code Online (Sandbox Code Playgroud)
但它们似乎都不起作用。
我是Python Anywhere的新手,我正在尝试建立一个已经构建的Flask Web应用程序。我遵循了本教程:https : //help.pythonanywhere.com/pages/Flask/
但是,当我尝试访问该站点时,日志显示以下内容:
Error running WSGI application
2018-07-24 11:25:47,696: ModuleNotFoundError: No module named 'flask_app'
2018-07-24 11:25:47,697: File "/var/www/vdvaxel_pythonanywhere_com_wsgi.py", line 111, in <module>
2018-07-24 11:25:47,697: from flask_app import app as application # noqa
Run Code Online (Sandbox Code Playgroud)
我一步一步地遵循了本教程,但是仍然行不通。有人可以解释我哪里错了吗?
假设我有这样的图像:
为此我想删除边框并得到这个:
完全相同的图像,没有边框。
我找到了一种“hacky”方法来做到这一点,它找到外部轮廓并在其上画一条线...说实话,这不是最好的方法,因为我需要调整线的“厚度”,使其足够粗覆盖边框,但不要太厚,这样就不会覆盖任何圆圈。
该image变量是您在上面看到的图像(已经灰度化、阈值化)。
cnts = cv2.findContours(image, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
cnts = cnts[0] if imutils.is_cv2() else cnts[1]
cv2.drawContours(image, cnts, -1, 0, 15) # 15 is the right thickness for this image, but might not be for other ones...
Run Code Online (Sandbox Code Playgroud)
结果就是上面第二张图。效果很好,但它不适用于所有图像(因为厚度不同)。有一个更好的方法吗?
假设我有一张这样的表:
COL1 COL2
ABC 1
DEF 2
GHI 3
Run Code Online (Sandbox Code Playgroud)
我想在新列 COL3 中包含 COL2 的总和:
COL1 COL2 COL3
ABC 1 6
DEF 2 6
GHI 3 6
Run Code Online (Sandbox Code Playgroud)
所以取一个简单的总和是行不通的,因为它只会返回 1 个值,而我希望该值在所有行中重复。
python ×6
angular ×2
javascript ×2
opencv ×2
firebase ×1
flask ×1
mysql ×1
ocr ×1
pandas ×1
pyinstaller ×1
scikit-learn ×1
sql ×1
typescript ×1