资源简介
利用opencv自带的骨架提取函数,经优化后得到汉字图像的骨架图
代码片段和文件信息
# -*- coding: utf-8 -*-
“““
Created on Tue Mar 20 10:53:50 2018
@author: Administrator
“““
import cv2 as cv
import numpy as np
def VThin(image array):
h = image.shape[1]
w = image.shape[0]
NEXT = 1
for i in range(399):
for j in range(399):
if NEXT == 0:
NEXT = 1
else:
M = image[i j - 1] + image[i j] + image[i j + 1] if 0 < j < w - 1 else 1
if image[i j] == 0 and M != 0:
a = [0] * 9
for k in range(3):
for l in range(3):
if -1 < (i - 1 + k) < h and -1 < (j - 1 + l) < w and image[i - 1 + k j - 1 + l] == 255:
a[k * 3 + l] = 1
sum = a[0] * 1 + a[1] * 2 + a[2] * 4 + a[3] * 8 + a[5] * 16 + a[6] * 32 + a[7] * 64 + a[8] * 128
image[i j] = array[sum] * 255
if array[sum] == 1:
NEXT = 0
return image
print(‘4‘)
def HThin(image array):
h = image.shape[1]
w = image.shape[0]
NEXT = 1
for j in range(399):
for i in range(399):
if NEXT == 0:
NEXT = 1
else:
M = image[i - 1 j] + image[i j] + image[i + 1 j] if 0 < i < h - 1 else 1
if image[i j] == 0 and M != 0:
a = [0] * 9
for k in range(3):
for l in range(3):
if -1 < (i - 1 + k) < h and -1 < (j - 1 + l) < w and image[i - 1 + k j - 1 + l] == 255:
a[k * 3 + l] = 1
sum = a[0] * 1 + a[1] * 2 + a[2] * 4 + a[3] * 8 + a[5] * 16 + a[6] * 32 + a[7] * 64 + a[8] * 128
image[i j] = array[sum] * 255
相关资源
- python人脸识别(opencv)
- 图片智能拼接(opencv)
- 计算机视觉 opencv 数数.ipynb
- python opencv 银行卡识别.ipynb
- python opencv 图片更换背景. ipynb
- 计算机视觉 opencv 答题卡阅卷.ipynb
- 计算机视觉 opencv 检测不合格产品.
- 计算机视觉 opencv 做一个动态时钟.
- 计算机视觉 opencv 哈哈镜
- 计算机视觉 opencv 蒙太奇.ipynb
- 计算机视觉 opencv 超像素分割.ipynb
- 计算机视觉 opencv 医学图片处理.ipy
- 人脸检测和识别(opencv3+python)
- python检测图片是否有人脸
- python语言实现的基于opencv的表针识别
- OpenCV入门教程+OpenCV官方教程中文版
- opencv+Python的教程大全
- opencv手势识别
- Python+OpenCv项目代码
- python 识别物体跟踪
- 通过python使用opencv计算图像的中心
- 用Pythonopencv提取图像中的红色区域
- 段力辉大神翻译原版OpenCV-Python
- OpenCV-Python 中文教程278991
- OpenCV官方教程中文版Python版带完整书
- dlib18.17 编译好的python-dlib库 不需要
- OpenCV Python 手册
- 带图形界面、车牌识别源码python+ope
- 从视频中分离前景目标的Python & Matl
- Python opencv库 cv2.so (armhf版
评论
共有 条评论