最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python統(tǒng)計(jì)字符內(nèi)容的占比的實(shí)現(xiàn)

 更新時(shí)間:2023年08月17日 11:13:12   作者:何中應(yīng)  
本文介紹了如何使用Python統(tǒng)計(jì)字符占比,包括字符串中字母、數(shù)字、空格等字符的占比,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

說(shuō)明:如果有自己動(dòng)手做過(guò)字符動(dòng)畫,會(huì)知道字符動(dòng)畫的“靈動(dòng)性”核心在于使用的字符集。

簡(jiǎn)單來(lái)說(shuō),動(dòng)畫轉(zhuǎn)為字符動(dòng)畫,原理是將動(dòng)畫轉(zhuǎn)為灰階圖,灰度范圍是0~255,然后將對(duì)應(yīng)灰度的像素點(diǎn)轉(zhuǎn)為對(duì)應(yīng)比值的字符。這里的對(duì)應(yīng)比值,就是要求使用的字符集中的字符,亮度應(yīng)該均勻。

字符的亮度,就取決于字符部分占字符全部部分的占比,占比越高,越亮,如下;

本文介紹,如何使用Python程序計(jì)算這個(gè)比值;

準(zhǔn)備字符圖

首先,準(zhǔn)備你需要的字符圖片,圖片大小應(yīng)該僅包含字符內(nèi)容,不能多,不能少;

以下圖片是我在Windwos畫圖工具里,敲一個(gè)字符,放到最大后,手動(dòng)一個(gè)個(gè)截出來(lái)的,可能會(huì)有偏差,應(yīng)該用PS會(huì)更好;

編碼

寫一個(gè)Python程序,做兩件事:

  • 讀取圖片;
  • 識(shí)別并統(tǒng)計(jì)非白色像素點(diǎn)RGB(255,255,255)的個(gè)數(shù);
  • 計(jì)算白點(diǎn)與所有像素點(diǎn)的占比;

如下:

import os
from PIL import Image
# 通過(guò)圖片統(tǒng)計(jì)字符占比
def pic_rate(file_path):
    # 打開圖片
    im = Image.open(file_path)
    # 加載
    pix = im.load()
    # 獲取圖片的寬度,高度
    width = im.size[0]
    height = im.size[1]
    # 設(shè)置一個(gè)變量,用以表示"非白"像素格子的數(shù)量
    not_white = 0
    # 遍歷圖片的每一個(gè)像素
    for x in range(width):
        for y in range(height):
            # 取下像素格子的色值,并保存
            r, g, b = pix[x, y]
            rgb = (r, g, b)
            # 如果該像素格子不是白色,則變量+1
            if rgb != (255, 255, 255):
                not_white = not_white + 1
    # 返回"非白"格子占字符總格子數(shù)(width * height)的比值,并轉(zhuǎn)換為字符串且保留前四位
    return str((not_white / (width * height)))[:4]
if __name__ == "__main__":
    # 輸入圖片路徑并讀取路徑下的所有字符文件
    path = r'D:\ShareMeeting\字母字符占比'
    file_list = os.listdir(path)
    # 設(shè)置一個(gè)字典記錄每一個(gè)字符的占比
    dic = {}
    # 循環(huán)執(zhí)行pic_rate方法
    for file in file_list:
        dic[file] = pic_rate(path + '\\' + file)
    # 按字符比值從低到高排序
    dic_sort = (sorted(dic.items(), key=lambda x: x[1]))
    # 打印
    for num in dic_sort:
        print(num)

執(zhí)行結(jié)果如下,可供參考;

總結(jié)

所以,如果你需要制作一張漂亮的字符動(dòng)畫,就可以根據(jù)上面統(tǒng)計(jì)出來(lái)的字符占比,合理安排字符集的順序。比如你要用10個(gè)字符來(lái)作為字符集,就可以取占比為0.05、0.10、0.15、0.20……0.50 的字符各一個(gè)。

到此這篇關(guān)于Python統(tǒng)計(jì)字符內(nèi)容的占比的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Python統(tǒng)計(jì)字符占比內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解python3中zipfile模塊用法

    詳解python3中zipfile模塊用法

    本篇文章給大家分享了關(guān)于python3中zipfile模塊的詳細(xì)用法以及技術(shù)難點(diǎn)解析,有興趣的朋友跟著學(xué)習(xí)下吧。
    2018-06-06
  • Django+simpleui實(shí)現(xiàn)文件上傳預(yù)覽功能(詳細(xì)過(guò)程)

    Django+simpleui實(shí)現(xiàn)文件上傳預(yù)覽功能(詳細(xì)過(guò)程)

    該文章詳細(xì)介紹了如何在Django框架中實(shí)現(xiàn)文件上傳、預(yù)覽和下載功能,并使用SimpleUI美化Django后臺(tái)界面,通過(guò)創(chuàng)建模型、表單、視圖和配置URL,實(shí)現(xiàn)了文件的存儲(chǔ)和管理,同時(shí),文章還提到了配置媒體文件、創(chuàng)建模板以及在生產(chǎn)環(huán)境中的部署注意事項(xiàng),感興趣的朋友一起看看吧
    2025-02-02
  • 如何基于python對(duì)接釘釘并獲取access_token

    如何基于python對(duì)接釘釘并獲取access_token

    這篇文章主要介紹了如何基于python對(duì)接釘釘并獲取access_token,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-04-04
  • Python打造智能批量重命名工具的詳細(xì)指南

    Python打造智能批量重命名工具的詳細(xì)指南

    因辦公要求,經(jīng)常需要對(duì)眾多、各類文件(夾)進(jìn)行重命名,人數(shù)少還好說(shuō),人數(shù)大就是一個(gè)稍微復(fù)雜的問(wèn)題了,所以本文我們就來(lái)使用Python開發(fā)一個(gè)智能批量重命名工具吧
    2025-07-07
  • Python的多態(tài)性實(shí)例分析

    Python的多態(tài)性實(shí)例分析

    這篇文章主要介紹了Python的多態(tài)性,以實(shí)例形式深入淺出的分析了Python在面向?qū)ο缶幊讨卸鄳B(tài)性的原理與實(shí)現(xiàn)方法,需要的朋友可以參考下
    2015-07-07
  • 詳解python代碼模塊化

    詳解python代碼模塊化

    今天給大家?guī)?lái)的是關(guān)于Python的相關(guān)知識(shí),文章圍繞著python代碼模塊化展開,文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06
  • 用python找出那些被“標(biāo)記”的照片

    用python找出那些被“標(biāo)記”的照片

    這篇文章主要介紹了用python找出那些被“標(biāo)記”的照片的相關(guān)資料,需要的朋友可以參考下
    2017-04-04
  • Python GUI編程學(xué)習(xí)筆記之tkinter控件的介紹及基本使用方法詳解

    Python GUI編程學(xué)習(xí)筆記之tkinter控件的介紹及基本使用方法詳解

    這篇文章主要介紹了Python GUI編程學(xué)習(xí)筆記之tkinter控件的介紹及基本使用方法,結(jié)合實(shí)例形式詳細(xì)分析了Python GUI編程中tkinter控件的原理、用法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下
    2020-03-03
  • Python實(shí)現(xiàn)自動(dòng)化調(diào)用鼠標(biāo)和鍵盤

    Python實(shí)現(xiàn)自動(dòng)化調(diào)用鼠標(biāo)和鍵盤

    這篇文章主要為大家詳細(xì)介紹了如何使用Python實(shí)現(xiàn)自動(dòng)化調(diào)用鼠標(biāo)和鍵盤,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2025-07-07
  • 在OpenCV里使用Camshift算法的實(shí)現(xiàn)

    在OpenCV里使用Camshift算法的實(shí)現(xiàn)

    這篇文章主要介紹了在OpenCV里使用Camshift算法的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11

最新評(píng)論

澄江县| 泰安市| 合山市| 秭归县| 察雅县| 噶尔县| 海淀区| 南岸区| 昭觉县| 台州市| 南阳市| 廉江市| 浦江县| 台南市| 双桥区| 酉阳| 盱眙县| 灵武市| 临泉县| 宁国市| 蕲春县| 青神县| 枣阳市| 荣成市| 呼和浩特市| 绥中县| 古交市| 澳门| 剑阁县| 黄石市| 饶平县| 翁源县| 建瓯市| 教育| 永胜县| 梁山县| 盐边县| 滕州市| 九龙城区| 新绛县| 武冈市|