• 大小: 93.63MB
    文件类型: .zip
    金币: 2
    下载: 0 次
    发布日期: 2024-01-07
  • 语言: Python
  • 标签: Python  OpenCv  

资源简介

Python和OpenCv的项目实践代码,供小伙伴们下载参考。

资源截图

代码片段和文件信息

# coding:utf-8
import os
import PIL.Image as PImage
from PIL import ImageFont ImageDraw
import cv2
import numpy as np
try:
    from Tkinter import *
    from ttk import *
    from tkFileDialog import *
    from tkMessageBox import *
except ImportError:
    from tkinter import *
    from tkinter.ttk import *
    from tkinter.filedialog import *
    from tkinter.messagebox import *


if getattr(sys ‘frozen‘ None):
    base_dir = os.path.join(sys._MEIPASS ‘usedres‘)
else:
    base_dir = os.path.join(os.path.dirname(__file__) ‘usedres‘)


def changeBackground(img img_back zoom_size center):
    # 缩放
    img = cv2.resize(img zoom_size)
    rows cols channels = img.shape

    # 转换hsv
    hsv = cv2.cvtColor(img cv2.COLOR_BGR2HSV)
    # 获取mask
    lower_blue = np.array([78 43 46])
    upper_blue = np.array([110 255 255])
    mask = cv2.inRange(hsv lower_blue upper_blue)
    # cv2.imshow(‘Mask‘ mask)

    # 腐蚀膨胀
    erode = cv2.erode(mask None iterations=1)
    dilate = cv2.dilate(erode None iterations=1)

    # 粘贴
    for i in range(rows):
        for j in range(cols):
            if dilate[i j] == 0:  # 0代表黑色的点
                img_back[center[0] + i center[1] + j] = img[i j]  # 此处替换颜色,为BGR通道

    return img_back

def paste(avatar bg zoom_size center):
    avatar = cv2.resize(avatar zoom_size)
    rows cols channels = avatar.shape
    for i in range(rows):
        for j in range(cols):
            bg[center[0] + i center[1] + j] = avatar[i j]
    return bg

def generator():
    global ename esex enation eyear emon eday eaddr eidn eorg elife ebgvar
    name = ename.get()
    sex = esex.get()
    nation = enation.get()
    year = eyear.get()
    mon = emon.get()
    day = eday.get()
    org = eorg.get()
    life = elife.get()
    addr = eaddr.get()
    idn = eidn.get()

    fname = askopenfilename(parent=root initialdir=os.getcwd() title=u‘选择头像‘)
    # print fname
    im = PImage.open(os.path.join(base_dir ‘empty.png‘))
    avatar = PImage.open(fname)  # 500x670

    name_font = ImageFont.truetype(os.path.join(base_dir ‘hei.ttf‘) 72)
    other_font = ImageFont.truetype(os.path.join(base_dir ‘hei.ttf‘) 60)
    bdate_font = ImageFont.truetype(os.path.join(base_dir ‘fzhei.ttf‘) 60)
    id_font = ImageFont.truetype(os.path.join(base_dir ‘ocrb10bt.ttf‘) 72)

    draw = ImageDraw.Draw(im)
    draw.text((630 690) name fill=(0 0 0) font=name_font)
    draw.text((630 840) sex fill=(0 0 0) font=other_font)
    draw.text((1030 840) nation fill=(0 0 0) font=other_font)
    draw.text((630 980) year fill=(0 0 0) font=bdate_font)
    draw.text((950 980) mon fill=(0 0 0) font=bdate_font)
    draw.text((1150 980) day fill=(0 0 0) font=bdate_font)
    start = 0
    loc = 1120
    while start + 11 < len(addr):
        draw.text((630 loc) addr[start:start + 11] fill=(0 0 0) font=other_font)
        start += 11
        loc += 100
    draw.text((630 loc) addr[start:] fill=(0 0 

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2019-03-18 17:23  项目代码\
     目录           0  2019-03-18 17:23  项目代码\.idea\
     文件         192  2018-05-15 16:23  项目代码\.idea\encodings.xml
     文件         180  2018-05-15 16:23  项目代码\.idea\vcs.xml
     文件       15317  2018-12-19 23:18  项目代码\1.jpg
     文件     1782592  2018-12-19 23:21  项目代码\bw.png
     文件     2494658  2018-12-19 23:36  项目代码\color.png
     文件        6310  2018-05-15 16:23  项目代码\idcardgenerator.py
     文件        2117  2018-05-15 16:23  项目代码\README.md
     文件          46  2018-05-15 16:23  项目代码\requirements.txt
     目录           0  2019-03-18 17:23  项目代码\resource\
     文件      292460  2018-05-15 16:23  项目代码\resource\avatar.png
     文件     9761882  2018-05-15 16:23  项目代码\resource\bg.png
     文件     2741364  2018-05-15 16:23  项目代码\resource\boldhei.ttf
     文件     1817063  2018-05-15 16:23  项目代码\resource\bw.png
     文件     6439504  2018-05-15 16:23  项目代码\resource\color.png
     文件     9561499  2018-05-15 16:23  项目代码\resource\empty.png
     文件     9401819  2018-05-15 16:23  项目代码\resource\example.png
     文件     2990476  2018-05-15 16:23  项目代码\resource\fzhei.ttf
     文件    10044356  2018-05-15 16:23  项目代码\resource\hei.ttf
     文件    16039552  2018-05-15 16:23  项目代码\resource\hwxhei.ttf
     文件      118837  2018-05-15 16:23  项目代码\resource\ico.icns
     文件       67646  2018-05-15 16:23  项目代码\resource\ico.ico
     文件       20632  2018-05-15 16:23  项目代码\resource\ocrb10bt.ttf
     文件      109154  2018-05-15 16:23  项目代码\resource\psd5263.JPG
     文件     8370759  2018-05-15 16:23  项目代码\resource\psd5263.psd
     文件       83329  2018-05-15 16:23  项目代码\resource\visa.jpg
     文件    27597195  2018-05-15 16:23  项目代码\resource\身份证.psd
     目录           0  2019-03-18 17:23  项目代码\usedres\
     文件     9561499  2018-05-15 16:23  项目代码\usedres\empty.png
     文件     2990476  2018-05-15 16:23  项目代码\usedres\fzhei.ttf
............此处省略4个文件信息

评论

共有 条评论