"一"的客观形态与主观感受之间的关联性研究


在这里插入图片描述
逻辑上而言,每个”一“的感受都来源于其形态,那么我们不禁要问,各个”一“带来的不同感受与它们的形态有何关联呢?为了探索”形态-感受“的关联性,需要对每个”一“的客观造型进行描述,提取特征,这里就需要用到图像处理的技术了。

任务主题

针对”一“,定义一系列特征(可借鉴参考资料),并依此对每个”一“进行测量。测量可以分两个层次:1.手工测量;2.用算法实现测量;

任务要求

(1)至少定义5个特征,需要图文结合地清晰描述出这些特征的定义;
(2)至少要能够手工方式对十二个”一“测定所有定义好的特征;
(3)尽可能用算法实现测量,并对比手工测量的结果;

提交内容

一篇博文/推文,严谨描述定义的特征,手工测量的方法和结果,若有算法,也需要描述算法思想和测量结果,并对比手工测量结果。编写有算法的,还需要提交算法源码(任意语言皆可)。文章链接登记到::https://shimo.im/sheets/CD9yV6p8PHTWTwHc/CqY0Y/ 《互动媒体技术19作业登记》->艺工交叉->十二个一的客观特征-主观特征关联性研究

特征定义

笔划长度

笔划长度a1:不同书法家因其书写习惯的影响,在宽度和长度上会有一定的区别,笔划长度L用来表现笔画基元的骨架规模,统计笔画骨架的初始像素点到该笔画的另一个结束像素点这个过程中所有像素点的个数,像素点集B =(b1,b2,…,bn),则用像素点总个数来表示笔画的长度特征。
a1 = N

笔划宽度

笔划宽度a2:笔画骨架的点集B =(b1,b2,…,bn),与骨架点相对应的宽度分别为W = (w1,w2,…,wn),则笔画的平均宽度:
在这里插入图片描述

笔力

笔力a3:由于书法家在书写时的力度是不断变化的。这种力度的变化在一定的范围之内,体现出了书法家的书写习惯,笔力用每个点的笔画宽度与平均的笔画宽度的方差来表示:
在这里插入图片描述

走势(斜率)

走势a4:根据笔画骨架起始点坐标位置和结束点坐标位置,可以得到每个笔画的走势情况。书法家张旭因其笔画走势夸张而闻名,笔画走势定义为:
在这里插入图片描述
其中,(xm,ym)骨架上起始点的坐标位置,(xn,yn)骨架上结束点坐标端点位置。

起笔点处斜率

在起笔点处的斜率

收笔点处斜率

在收笔点处的斜率

骨架提取

利用Python 和 OpenCV 对字进行骨架提取

# -*- coding: utf-8 -*-
import cv2

def Thin(image, array):
    h, w = image.shape
    iThin = image

    for i in range(h):
        for j in range(w):
            if image[i, j] == 0:
                a = [1] * 9
                for k in range(3):
                    for l in range(3):
                        if -1 < (i - 1 + k) < h and -1 < (j - 1 + l) < w and iThin[i - 1 + k, j - 1 + l] == 0:
                            a[k * 3 + l] = 0
                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
                iThin[i, j] = array[sum] * 255
    return iThin


def Two(image):
    w, h = image.shape
    size = (w, h)
    iTwo = image
    for i in range(w):
        for j in range(h):
            if image[i, j] < 180:
                iTwo[i, j] = 0
            else:
                iTwo[i, j] = 255
    return iTwo


# 映射表
array = [0, 0, 1, 1, 0, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, \
         1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, \
         0, 0, 1, 1, 0, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, \
         1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, \
         1, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
         1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 1, 1, 1, 0, 1, \
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
         0, 0, 1, 1, 0, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, \
         1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, \
         0, 0, 1, 1, 0, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, \
         1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, \
         1, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
         1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, \
         1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 1, 1, 1, 0, 0, \
         1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0]

img = cv2.imread('2.png', 0)
cv2.imshow('image', img)
cv2.waitKey(0)

th3 = cv2.adaptiveThreshold(img, 255, cv2.ADAPTIVE_THRESH_GAUSSIAN_C, cv2.THRESH_BINARY, 155, 2)
cv2.imshow('iTwo', th3)
cv2.waitKey(0)

iThin = Thin(th3, array)
cv2.imshow('iThin', iThin)
cv2.waitKey(0)

iTwo = Two(img)
iThin_2 = Thin(iTwo, array)
cv2.imshow('iTwo_2', iThin_2)
cv2.waitKey(0)

cv2.destroyAllWindows()

参考链接: https://blog.csdn.net/hehedadaq/article/details/80303218
在这里插入图片描述
在这里插入图片描述

手工测量

在这里我们针对第一个“一”进行手工测量的说明
利用PS中的标尺工具进行测量,单位采用的是厘米
注:PS中原点坐标为左上角

笔划长度

L为测量出的长度
a1 = 14.58
在这里插入图片描述

笔画宽度

最大宽度

Hmax = 2.74
在这里插入图片描述

最小宽度

Hmin = 0.84
在这里插入图片描述

平均宽度

每隔一定长度进行一次测量宽度,对其求平均值
在这里插入图片描述
H1 = 1.21
H2 = 1.01
H3 = 0.84
H4 = 0.99
H5 = 2.74
平均宽度 a2 = 1.358

笔力

笔力用每个点的笔画宽度与平均的笔画宽度的方差来表示
由上面宽度的测量出来的值可以直接计算
a3 = 0.3135

走势

总体走势

根据笔画骨架起始点坐标位置和结束点坐标位置,可以得到每个笔画的走势情况
可以直接获取鼠标所在点的坐标
在这里插入图片描述
在这里插入图片描述
(xm, ym) = (1.87, 7.07)
(xn, yn) = (14.94, 4.57)
a4 = -0.191

起笔点处斜率

在这里插入图片描述
(xm, ym) = (1.22, 5.57)
(xn, yn) = (2.94, 7.22)
a起笔 = 0.959

收笔点处斜率

在这里插入图片描述
(xm, ym) = (13.20, 3.87)
(xn, yn) = (14.76, 5.59)
a收笔 = 1.103

十二个“一”测量结果

1

在这里插入图片描述

在这里插入图片描述
笔划长度a1 = 14.58
最大宽度Hmax = 2.74
最小宽度Hmin = 0.84
平均宽度 a2 = 1.358
笔力a3 = 0.3135
总体走势a4 = -0.191
起笔点处斜率a起笔 = 0.959
收笔点处斜率a收笔 = 1.103

2

在这里插入图片描述
在这里插入图片描述
笔划长度a1 = 12.18
最大宽度Hmax = 1.51
最小宽度Hmin = 0.65
平均宽度 a2 = 0.843
笔力a3 = 0.34718
总体走势a4 = -0.216
起笔点处斜率a起笔 = 0.940
收笔点处斜率a收笔 = 1.038

3

在这里插入图片描述

在这里插入图片描述
笔划长度a1 = 14.39
最大宽度Hmax = 1.92
最小宽度Hmin = 0.68
平均宽度 a2 = 0.878
笔力a3 = 0.5303
总体走势a4 = -0.167
起笔点处斜率a起笔 = -0.452
收笔点处斜率a收笔 = 0.912

4

在这里插入图片描述
在这里插入图片描述
笔划长度a1 = 12.51
最大宽度Hmax = 2.31
最小宽度Hmin = 1.57
平均宽度 a2 = 1.840
笔力a3 = 0.2710
总体走势a4 = -0.137
起笔点处斜率a起笔 = -0.337
收笔点处斜率a收笔 = 0.987

5

在这里插入图片描述
在这里插入图片描述
笔划长度a1 = 10.83
最大宽度Hmax = 2.46
最小宽度Hmin = 1.07
平均宽度 a2 = 1.41
笔力a3 = 0.4868
总体走势a4 = -0.2604
起笔点处斜率a起笔 = 0.4373
收笔点处斜率a收笔 = 0.046

6

在这里插入图片描述
在这里插入图片描述
笔划长度a1 = 11.16
最大宽度Hmax = 1.83
最小宽度Hmin = 0.97
平均宽度 a2 = 1.265
笔力a3 = 0.1485
总体走势a4 = -0.092
起笔点处斜率a起笔 = 0.911
收笔点处斜率a收笔 = 1.640

7

在这里插入图片描述
在这里插入图片描述
笔划长度a1 = 13.18
最大宽度Hmax = 1.15
最小宽度Hmin = 0.64
平均宽度 a2 = 0.73
笔力a3 = 0.2147
总体走势a4 = -0.137
起笔点处斜率a起笔 = -0.107
收笔点处斜率a收笔 = 0.198

8

在这里插入图片描述
在这里插入图片描述
笔划长度a1 = 12.43
最大宽度Hmax = 1.80
最小宽度Hmin = 1.12
平均宽度 a2 = 1.426
笔力a3 = 0.2416
总体走势a4 = -0.157
起笔点处斜率a起笔 = 1.018
收笔点处斜率a收笔 = 0.504

9

在这里插入图片描述
在这里插入图片描述
笔划长度a1 = 12.91
最大宽度Hmax = 2.18
最小宽度Hmin = 0.74
平均宽度 a2 = 1.367
笔力a3 = 0.513
总体走势a4 = -0.2037
起笔点处斜率a起笔 = -1.889
收笔点处斜率a收笔 = -0.238

10

在这里插入图片描述
在这里插入图片描述
笔划长度a1 = 11.85
最大宽度Hmax = 2.20
最小宽度Hmin = 1.36
平均宽度 a2 = 1.557
笔力a3 = 0.336
总体走势a4 = -0.137
起笔点处斜率a起笔 = 0.773
收笔点处斜率a收笔 = 1.117

11

在这里插入图片描述
在这里插入图片描述
笔划长度a1 = 12.36
最大宽度Hmax = 1.98
最小宽度Hmin = 1.33
平均宽度 a2 = 1.547
笔力a3 = 0.2421
总体走势a4 = -0.097
起笔点处斜率a起笔 = 1.144
收笔点处斜率a收笔 = 0.432

12

在这里插入图片描述
在这里插入图片描述
笔划长度a1 = 14.58
最大宽度Hmax = 1.25
最小宽度Hmin = 0.46
平均宽度 a2 = 0.664
笔力a3 = 0.3102
总体走势a4 = -0.1993
起笔点处斜率a起笔 = 0.597
收笔点处斜率a收笔 = 0.836

结果分析

“一”的书法形式总是两头大,中间细。从测量宽度的过程可以看出,最小宽度总是在中间位置;而最大宽度多是在两端位置。笔势也总是斜向上为主;起笔多为向下顿;收笔多为向上勾,这可以从起笔斜率与收笔斜率中看出。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值