第十期:第2款輕鬆生成像素藝術照

前言

PyHubWeekly每週定期更新,精選GitHub上優質的Python項目/小工具。

我把PyHubWeekly託管到了Github,感興趣的可以搜索Github項目PyHubWeekly,如果喜歡,麻煩給個Star支持一下吧。此外,歡迎大家通過提交issue來投稿和推薦自己的項目~

本期為大家推薦GitHub上5個優質的Python項目,它們分別是:

  • igcommit
  • pyxelate
  • automl
  • salt
  • public-apis

下面分別來介紹一下上述5個GitHub項目。

igcommit

Star:105

git是一個非常強大,但是管理起來又相對麻煩的一款版本控制工具,為了保證代碼的整潔性、一致性、安全性,我們需要人工進行非常多的檢視工作。

如果是Python、php這類腳本語言還好,畢竟代碼量相對較少,但是,如果是C++、Java,需要耗費很大功夫在代碼的檢視方面。

igcommit提供一種pre-receive鉤子,使得當提交代碼時能夠提前與服務器端代碼進行校驗和規範檢查,如果不符合要求則會直接拒絕,能夠很大程度上減少代碼檢視工作量。它主要有如下特性:

  • 支持BUGFIX、FEATURE、WIP等標籤驗證
  • 支持CSS、Go、Python、php、html等語法檢查
  • 能夠驗證json、yaml、xml等數據格式
  • 堅持提交摘要的格式
  • 校驗提交者信息和郵件地址

安裝配置

<code>pip install igcommit
ln -s igcommit-receive /home/git/repositories/myproject.git/hooks/pre-receive/<code>

示例

<code>=== CheckDuplicateCommitSummaries on CommitList ===
ERROR: summary "Add nagios check for early expiration of licenses" duplicated 2 times


=== CheckCommitSummary on 31d0f6b ===
WARNING: summary longer than 72 characters

=== CheckCommitSummary on 6bded65 ===
WARNING: past tense used on summary

=== CheckCommand "flake8" on src/check_multiple.py at 6bded65 ===
INFO: line 10 col 5: E225 missing whitespace around operator
INFO: line 17 col 80: E501 line too long (122 > 79 characters)
INFO: line 17 col 85: E203 whitespace before ','

=== CheckCommitMessage on 6fdbc00 ===
WARNING: line 7 is longer than 80
WARNING: line 9 is longer than 80/<code>

pyxelate

Star:319

pyxelate是一款生成圖像像素藝術照的工具,它通過對圖像進行下采樣,然後結合無監督學習生成調色板合成衣服像素圖片。

安裝

<code>pip3 install git+https://github.com/sedthh/pyxelate.git/<code>

示例

<code>from pyxelate import Pyxelate
from skimage import io
import matplotlib.pyplot as plt

img = io.imread("kobe.jpg")
# generate pixel art that is 1/14 the size
height, width, _ = img.shape
factor = 3
colors = 16

dither = True

p = Pyxelate(height // factor, width // factor, colors, dither)
img_small = p.convert(img)  # convert an image with these settings

_, axes = plt.subplots(1, 2, figsize=(16, 16))
axes[0].imshow(img)
axes[1].imshow(img_small)
plt.show()/<code>

輸出結果

PyHubWeekly | 第十期:第2款輕鬆生成像素藝術照

automl

Star:557

automl是有Google Brain剛開源不到一週的一款自動機器學習項目,此項目包含了與AutoML相關的模型和庫的列表。

由於項目剛開源,所以列表中只包含了谷歌最新目標檢測模型EfficientDet,該模型在模型大小、計算量方面都對比於當前最優秀的模型有了很大的提升。

PyHubWeekly | 第十期:第2款輕鬆生成像素藝術照

salt

Star:10.7k

salt是一款由Python開發的應用集中管理平臺,設計最初的目的是用於遠程執行系統,但是經過多年的豐富和晚上,現在具備如下幾項主要功能,

  • 遠程執行
  • 監控
  • 配置管理

這款工具比較適合於運維人員使用,它能夠批量在大量的服務器上執行命令,對多種任務進行綜合管理、文件分發。

public-apis

Star:72.5k

我們總是在網上看到很多好用的工具或者網站,你是否想過自己實現一款解決某項痛點的工具?

public-apis是一個軟件和web開發的免費api的集合,它涵蓋內容包括但不限於,

  • 動漫
  • 藝術設計
  • 日曆
  • 數據驗證
  • 金融
  • 事件
  • 音樂
  • 機器學習
  • 購物
  • 社交
  • ...

我們可以找到自己需要的api,然後給它封裝一層外殼,形成一款完整易用的產品。例如,可以使用Python的一些web開發框架或者javascript庫React、Vue寫一個前端,這些api作為後端,這樣就成了一款web應用。當然,也可以使用PyQt、tkinter、PySimpleGUI開發一款分發工具。


分享到:


相關文章: