AttributeError: 'numpy.ndarray' object has no attribute 'release'
时间: 2023-08-05 10:09:37 浏览: 122
对不起,我之前的回答有误。确实`numpy.ndarray`对象没有`release`方法。我混淆了`cv2.imread`返回的图像对象和视频对象的释放。
对于图像对象,您不需要显式地释放它们,因为在Python中,垃圾回收机制会自动处理它们的释放。因此,您不需要调用`release`方法。
请忽略我先前回答中提到的释放图像文件的部分代码。以下是去除了错误代码的修正后的示例代码:
```python
import pytesseract
import cv2
import os
def get_image_paths(folder_path):
image_paths = []
for root, directories, files in os.walk(folder_path):
for file in files:
if file.endswith(".jpg") or file.endswith(".png"):
image_path = os.path.join(root, file)
image_paths.append(image_path)
return image_paths
folder_path = "D:\SW_demo"
old_paths = get_image_paths(folder_path)
pytesseract.pytesseract.tesseract_cmd = 'E:\\Tesseract-OCR\\tesseract.exe'
# 读取图像并处理
for old_path in old_paths:
image = cv2.imread(old_path)
# 转换为灰度图像
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
# 使用Tesseract进行文本识别
text = pytesseract.image_to_string(gray, lang='chi_sim')
keyword = "LR"
# 查找关键词后的文字
index = text.find(keyword)
if index != -1:
extracted_text = text[index + len(keyword):].strip()
words = extracted_text.split()
result = ' '.join(words[0:2]) # 只保留从第二个单词开始的部分
result = result.replace(" ", "")
new_name = keyword + result + '.png'
# 提取关键词后的文字extracted_text = extract_text_from_image(image_path, keyword)
print(new_name)
new_path = os.path.join(folder_path, new_name)
# 重命名文件
os.rename(old_path, new_path)
```
非常抱歉给您带来困扰。如果您还有其他问题,请随时提问。
阅读全文