本文目錄一覽:
- 1、python可以自動排海報嗎
- 2、Python都可以做哪些副業?
- 3、用python摳圖(背景透明化)
- 4、Python程序抓圖 怎麼用程序實現截圖
- 5、如何用 Python 實現一個摳圖功能
- 6、python如何實現分行提取指定字元串?
python可以自動排海報嗎
可以。通過編碼後可實現。
批量摳圖:輸入文字和海報元素,就可以一鍵自動排版海報,一個小時就幾十張。
Python都可以做哪些副業?
1、兼職處理數據
Excel整理數據功能雖然很強大,但在Python面前,曾經統治職場的它也的敗下陣來。因為Python在搜集數據整理分析數據的過程中更加便捷,通過幾行代碼還可以實現自動化操作。如果你學會Python,便可以從網上找一些數據篩選、匯總的兼職工作來賺點小錢。
2、兼職查詢資料
學會Python之後,很容易通過幾行代碼在網路上爬取各種各樣的資源。目前有很多工作,都會招一些查閱匯總資料的兼職。學會Python的小白,便可以利用業餘時間,通過Python幫助個人或者一些公司企業進行資料搜羅整理,還可以賺一筆小錢豐富自己的生活。
3、兼職P圖
通過Python可以利用相關代碼進行批量處理圖片,不管是縮放、旋轉、鏡像、裁剪、灰度、添加文本等等,都可以在Python的幫助下獲得,再也不用一張一張去P圖了。如果學會了Python進行P圖,平時可以和一些照相館合作,幫助他們處理大量圖片。
用python摳圖(背景透明化)
matplotlib讀取RGB圖片的時候,往往把圖片轉化為四通道圖片,其中第四個通道是α通道,可以決定圖像的透明度。
如果把圖片的前景的透明度設定為1,背景的透明度設定為0,那麼就算去掉了背景了。
原圖。
代碼。
出圖。
有部分白色背景由於不夠白,被保留了下來。
換圖。
觀察可知,背景是深淺不一的藍色。
深色參數是a[0,0],淺色區域比較多,也不容易確定位置。
用如下代碼摳圖,太狠!
再修改代碼。
if a[i,j,2]1.5*a[i,j,0] and a[i,j,2]1.2*a[i,j,1]:
不準摳去黑色部分。經過逐步調整顏色閾值,得到下面的效果。
上面代碼如下。
Python程序抓圖 怎麼用程序實現截圖
由於在我的一個程序中想要添加一個截圖功能,今天看一下利用Python怎樣截圖,功能實現都挺簡單了,直接上代碼
from PIL import ImageGrab
im = ImageGrab.grab()
im.save(addr,’jpeg’)
很簡單的幾行代碼就實現了我要的功能,PIL(Python Image Library)是Python的一個圖形庫,需要自己下載安裝,im = ImageGrab.grab()這行代碼實現截圖功能,可以帶參數,指定要截取圖片的坐標位置,不帶參數默認全屏截圖,im.save(addr,’jpeg’)是保存截取的圖片,第一個參數是保存路徑,第二個參數是圖片格式
如何用 Python 實現一個摳圖功能
使用Python和OpenCV進行摳圖
其中使用了opencv中的grabcut方法
直接上代碼
[python] view plain copy
# encoding:utf-8
# 圖像提取
# create by
import numpy as np
import cv2
from matplotlib import pyplot as plt
img = cv2.imread(‘1.jpg’)
mask = np.zeros(img.shape[:2], np.uint8)
bgdModel = np.zeros((1, 65), np.float64)
fgdModel = np.zeros((1, 65), np.float64)
rect = (20, 20, 413, 591)
cv2.grabCut(img, mask, rect, bgdModel, fgdModel, 10, cv2.GC_INIT_WITH_RECT)mask2 = np.where((mask == 2) | (mask == 0), 0, 1).astype(‘uint8’)img = img * mask2[:, :, np.newaxis]
img += 255 * (1 – cv2.cvtColor(mask2, cv2.COLOR_GRAY2BGR))# plt.imshow(img)
# plt.show()
img = np.array(img)
mean = np.mean(img)
img = img – mean
img = img * 0.9 + mean * 0.9
img /= 255
plt.imshow(img)
plt.show()
python如何實現分行提取指定字元串?
python讀取文件內容的方法:一.最方便的方法是一次性讀取文件中的所有內容並放置到一個大字元串中:all_the_text=open(‘thefile.txt’).read()#文本文件中的所有文本all_the_data=open(‘abinfile’,’rb’).read()#二進位文件中的所有數據為了安全起見,最好還是給打開的文件對象指定一個名字,這樣在完成操作之後可以迅速關閉文件,防止一些無用的文件對象佔用內存。舉個例子,對文本文件讀取:file_object=open(‘thefile.txt’)try:all_the_text=file_object.read()finally:file_object.close()不一定要在這裡用Try/finally語句,但是用了效果更好,因為它可以保證文件對象被關閉,即使在讀取中發生了嚴重錯誤。二.最簡單、最快,也最具Python風格的方法是逐行讀取文本文件內容,並將讀取的數據放置到一個字元串列表中:list_of_all_the_lines=file_object.readlines()這樣讀出的每行文本末尾都帶有”\n”符號;如果你不想這樣,還有另一個替代的辦法,比如:list_of_all_the_lines=file_object.read().splitlines()list_of_all_the_lines=file_object.read().split(‘\n’)list_of_all_the_lines=[L.rstrip(‘\n’)forLinfile_object]
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/190413.html