<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Python on G. T. Wang</title>
    <link>https://blog.gtwang.org/tags/python/</link>
    <description>Recent content in Python on G. T. Wang</description>
    <generator>Hugo -- 0.156.0</generator>
    <language>zh-tw</language>
    <copyright>G. T. Wang</copyright>
    <lastBuildDate>Tue, 18 Sep 2018 11:20:29 +0800</lastBuildDate>
    <atom:link href="https://blog.gtwang.org/tags/python/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Keras 以 ResNet-50 預訓練模型建立狗與貓辨識程式</title>
      <link>https://blog.gtwang.org/programming/keras-resnet-50-pre-trained-model-build-dogs-cats-image-classification-system/</link>
      <pubDate>Tue, 18 Sep 2018 11:20:29 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/keras-resnet-50-pre-trained-model-build-dogs-cats-image-classification-system/</guid>
      <description>&lt;p&gt;這裡示範在 Keras 架構下以 ResNet-50 預訓練模型為基礎，建立可用來辨識狗與貓的 AI 程式。&lt;/p&gt;
&lt;p&gt;在 &lt;a href=&#34;https://blog.keras.io/building-powerful-image-classification-models-using-very-little-data.html&#34;&gt;Keras 的部落格&lt;/a&gt;中示範了使用 VGG16 模型建立狗與貓的辨識程式，準確率大約為 94%，而這裡則是改用 ResNet50 模型為基礎，並將輸入影像尺寸提高為 224x224，加上大量的 data augmentation，結果可讓辨識的準確率達到 99%。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python 產生 Linux 的 /etc/shadow 加密格式密碼教學</title>
      <link>https://blog.gtwang.org/programming/generate-linux-shadow-encrypted-password/</link>
      <pubDate>Wed, 18 Jul 2018 16:45:46 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/generate-linux-shadow-encrypted-password/</guid>
      <description>&lt;p&gt;這裡介紹如何使用 Python 自己產生 Linux 中 &lt;code&gt;/etc/shadow&lt;/code&gt; 所使用的加密格式密碼。&lt;/p&gt;
&lt;p&gt;在 Linux 系統上，所有使用者的密碼都是以加密的形式存放在 &lt;a href=&#34;https://blog.gtwang.org/linux/linux-etc-shadow-file-format/&#34;&gt;/etc/shadow 檔案&lt;/a&gt;中，如果想要手動產生，可以使用以下所介紹的方法。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python 與 OpenCV 裁切圖片教學</title>
      <link>https://blog.gtwang.org/programming/how-to-crop-an-image-in-opencv-using-python/</link>
      <pubDate>Sun, 27 May 2018 15:33:21 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/how-to-crop-an-image-in-opencv-using-python/</guid>
      <description>&lt;p&gt;本篇介紹如何使用 Python 的 OpenCV 模組裁切圖片，取出部份的區域另存成新圖檔。&lt;/p&gt;
&lt;p&gt;OpenCV 是一個普遍被使用影像處理函式庫，以下介紹如何裁切 OpenCV 的圖片，擷取圖片中部份的區域，顯示在螢幕上或是儲存為圖檔。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python 多執行緒 threading 模組平行化程式設計教學</title>
      <link>https://blog.gtwang.org/programming/python-threading-multithreaded-programming-tutorial/</link>
      <pubDate>Thu, 17 May 2018 19:55:19 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/python-threading-multithreaded-programming-tutorial/</guid>
      <description>&lt;p&gt;本篇介紹如何在 Python 中使用 &lt;code&gt;threading&lt;/code&gt; 模組，撰寫多執行緒的平行計算程式，利用多顆 CPU 核心加速運算。&lt;/p&gt;
&lt;p&gt;現在電腦的 CPU 都有許多的核心，若想要讓程式可以運用多顆 CPU 核心，充分發揮硬體的運算能力，就必須考慮使用多執行緒（multithreading）或多行程（multiprocessing）等平行化的技術，以下介紹 Python 的多執行緒的程式設計方法與技巧，並提供詳細的範例程式碼。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python 讀取與寫入 CSV 檔案教學與範例</title>
      <link>https://blog.gtwang.org/programming/python-csv-file-reading-and-writing-tutorial/</link>
      <pubDate>Thu, 22 Mar 2018 05:47:04 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/python-csv-file-reading-and-writing-tutorial/</guid>
      <description>&lt;p&gt;這裡介紹如何在 Python 中使用 &lt;code&gt;csv&lt;/code&gt; 模組，讀取與寫入逗點分隔檔。&lt;/p&gt;
&lt;p&gt;逗點分隔（Comma-Separated Values，簡稱 csv）是一種簡單的文字檔格式，以逗號分隔不同欄位的資料，很多軟體在儲存與交換表格資料時都支援這樣的格式。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python 使用 OpenCV 自動裁切掃描文件白邊、修正傾斜角度教學</title>
      <link>https://blog.gtwang.org/programming/python-opencv-auto-crop-and-rotate-scanned-image-tutorial/</link>
      <pubDate>Wed, 07 Mar 2018 12:29:18 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/python-opencv-auto-crop-and-rotate-scanned-image-tutorial/</guid>
      <description>&lt;p&gt;這裡示範如何在 Python 中以 OpenCV 自動偵測與切除掃描影像的白色邊緣，並修正傾斜的文件影像。&lt;/p&gt;
&lt;p&gt;最近我正在整理大量的舊書籍，想要將書籍的每一頁都掃描成 PDF 電子檔，方便保存下來，之前已經開發完&lt;a href=&#34;https://blog.gtwang.org/programming/automation-of-google-ocr-using-python-tutorial/&#34;&gt;自動化的文字辨識的程式&lt;/a&gt;了，接下來我要處理掃描圖檔的空白邊緣修正問題，以下是問題的敘述與程式開發流程紀錄。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python 與 OpenCV 繪製直方圖，分析影像亮度分佈教學</title>
      <link>https://blog.gtwang.org/programming/python-opencv-matplotlib-plot-histogram-tutorial/</link>
      <pubDate>Mon, 05 Mar 2018 19:49:31 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/python-opencv-matplotlib-plot-histogram-tutorial/</guid>
      <description>&lt;p&gt;這裡介紹如何在 Python 中以 OpenCV 與 matplotlib 等工具，統計影像像素值的分佈，並畫出直方圖。&lt;/p&gt;
&lt;p&gt;在開發影像處理的程式時，我們時常會需要觀察影像像素值的分佈與特性，以便選用適合的演算法、制定門檻值、設計出適合的影像處理流程。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python 使用 OpenCV、Dlib 實作即時人臉偵測程式教學</title>
      <link>https://blog.gtwang.org/programming/python-opencv-dlib-face-detection-implementation-tutorial/</link>
      <pubDate>Sun, 04 Mar 2018 08:42:38 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/python-opencv-dlib-face-detection-implementation-tutorial/</guid>
      <description>&lt;p&gt;這裡示範如何在 Python 中使用 OpenCV 與 Dlib 開發人臉偵測程式，即時擷取網路攝影機串流影像，輸出人臉偵測結果。&lt;/p&gt;
&lt;p&gt;人臉偵測是一項相當成熟的技術，不管是數位相機或是手機在拍照時，都可以自動偵測人臉並對焦，而在自行開發的程式當中，若要加入人臉偵測的功能也非常容易，只要串接相關的模組即可實作出相當專業的程式。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python 使用 Google 雲端硬碟 API 自動進行文字辨識教學</title>
      <link>https://blog.gtwang.org/programming/automation-of-google-ocr-using-python-tutorial/</link>
      <pubDate>Fri, 02 Mar 2018 14:58:05 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/automation-of-google-ocr-using-python-tutorial/</guid>
      <description>&lt;p&gt;這裡示範如何在 Python 中使用 Google 雲端硬碟 API，自動上傳圖片、進行文字辨識、下載結果。&lt;/p&gt;
&lt;p&gt;在上一篇的 &lt;a href=&#34;https://blog.gtwang.org/useful-tools/google-drive-vertical-and-horizontal-chinese-characters-ocr-tutorial/&#34;&gt;Google 雲端硬碟文字辨識的文章&lt;/a&gt;中，我們介紹了以手動的方式上傳圖片，讓 Google 幫忙自動取出圖片中的文字，雖然省去了大量的打字工作，但是若遇到圖片數量很龐大時，以手動上傳還是很吃力的。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python 使用 Beautiful Soup 抓取與解析網頁資料，開發網路爬蟲教學</title>
      <link>https://blog.gtwang.org/programming/python-beautiful-soup-module-scrape-web-pages-tutorial/</link>
      <pubDate>Thu, 01 Feb 2018 08:34:47 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/python-beautiful-soup-module-scrape-web-pages-tutorial/</guid>
      <description>&lt;p&gt;這裡介紹如何使用 Python 的 Beautiful Soup 模組自動下載並解析網頁資料，開發典型的網路爬蟲程式。&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://www.crummy.com/software/BeautifulSoup/&#34;&gt;Beautiful Soup&lt;/a&gt; 是一個 Python 的函式庫模組，可以讓開發者僅須撰寫非常少量的程式碼，就可以快速解析網頁 HTML 碼，從中翠取出使用者有興趣的資料、去蕪存菁，降低網路爬蟲程式的開發門檻、加快程式撰寫速度。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python 如何檢查檔案或目錄是否已經存在？</title>
      <link>https://blog.gtwang.org/programming/python-howto-check-whether-file-folder-exists/</link>
      <pubDate>Sat, 27 Jan 2018 07:38:27 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/python-howto-check-whether-file-folder-exists/</guid>
      <description>&lt;p&gt;這裡介紹何使用 Python 程式判斷指定的檔案或目錄是否已經存在。&lt;/p&gt;
&lt;p&gt;在各種語言的程式設計上，檢查特定的檔案或目錄是否存在是一個很常見的工作，而在 Python 中也不利外，以下是在各種情況下檢查檔案或目錄的方法與範例。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python 使用 requests 模組產生 HTTP 請求，下載網頁資料教學</title>
      <link>https://blog.gtwang.org/programming/python-requests-module-tutorial/</link>
      <pubDate>Fri, 26 Jan 2018 16:35:31 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/python-requests-module-tutorial/</guid>
      <description>&lt;p&gt;本篇介紹如何在 Python 中使用 &lt;code&gt;requests&lt;/code&gt; 模組建立各種 HTTP 請求，從網頁伺服器上取得想要的資料。&lt;/p&gt;
&lt;p&gt;如果想要使用 Python 來下載網頁上的資料，最基本的作法就是以 &lt;code&gt;requests&lt;/code&gt; 模組建立適當的 HTTP 請求，透過 HTTP 請求從網頁伺服器下載指定的資料，這種方式雖然步驟比較繁瑣，也需要一點通訊協定的基礎，但是絕大部分的網路爬蟲或除錯問題都可以靠這個架構解決，是資深網路程式設計師必備的工具之一。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python 計算 MD5 與 SHA 雜湊教學與範例</title>
      <link>https://blog.gtwang.org/programming/python-md5-sha-hash-functions-tutorial-examples/</link>
      <pubDate>Tue, 23 Jan 2018 16:24:33 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/python-md5-sha-hash-functions-tutorial-examples/</guid>
      <description>&lt;p&gt;這裡介紹如何使用 Python 的 &lt;code&gt;hashlib&lt;/code&gt; 模組計算資料的 MD5 與 SHA 雜湊值。&lt;/p&gt;
&lt;p&gt;Python 內建的 &lt;code&gt;hashlib&lt;/code&gt; 模組可以用來計算資料的各種雜湊值，其中 &lt;code&gt;md5&lt;/code&gt;、&lt;code&gt;sha1&lt;/code&gt;、&lt;code&gt;sha224&lt;/code&gt;、&lt;code&gt;sha256&lt;/code&gt;、&lt;code&gt;sha384&lt;/code&gt; 與 &lt;code&gt;sha512&lt;/code&gt; 這幾種演算法是任何平台都有支援的，除此之外的演算法就要看平台本身的 OpenSSL 函式庫而定。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python 與 OpenCV 加入線條圖案與文字教學</title>
      <link>https://blog.gtwang.org/programming/opencv-drawing-functions-tutorial/</link>
      <pubDate>Tue, 09 Jan 2018 10:24:14 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/opencv-drawing-functions-tutorial/</guid>
      <description>&lt;p&gt;這裡介紹如何在 Python 中使用 OpenCV 在圖片上加上線條等幾何圖案以及文字標示。&lt;/p&gt;
&lt;p&gt;在影像處理的程式中，若要比較清楚呈現處理的結果，時常會需要在圖片上加上一些標示的幾何圖形或是文字，比方說在物件辨識的問題上，可能會使用方框將辨識出來的物件框起來，並加註一些文字描述等。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python 與 OpenCV 實作移動偵測程式教學，打造智慧型監視器</title>
      <link>https://blog.gtwang.org/programming/opencv-motion-detection-and-tracking-tutorial/</link>
      <pubDate>Fri, 05 Jan 2018 15:33:58 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/opencv-motion-detection-and-tracking-tutorial/</guid>
      <description>&lt;p&gt;這裡示範如何使用 Python 與 OpenCV 實作移動偵測程式，分析攝影機影片，自動挑選出有物體移動的畫面。&lt;/p&gt;
&lt;p&gt;OpenCV 是一個很好用的影像處理函式庫，裡面有非常多在影像處理上常會用到的工具函數，我們只需要拿幾個簡單的函數組合起來，就可以打造一個效果還不錯的智慧型監視器，自動且即時的分析攝影機的影像，當偵測到有人或物體在移動時，讓程式自動觸發某些動作（例如送出通知的 Email 等），以下是幾個簡單的實作範例。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Keras 如何查詢模型參數的總數量？</title>
      <link>https://blog.gtwang.org/programming/how-to-find-number-of-parameters-of-a-keras-model/</link>
      <pubDate>Thu, 28 Dec 2017 12:01:01 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/how-to-find-number-of-parameters-of-a-keras-model/</guid>
      <description>&lt;p&gt;這裡介紹如何在 Keras 的程式中查詢深度學習模型參數的總數量。&lt;/p&gt;
&lt;p&gt;Keras 可用來快速搭建各種深度學習模型，但是在嘗試各種模型的過程中，我們也時常會需要了解模型的結構與參數的數量，方便調整模型。&lt;/p&gt;</description>
    </item>
    <item>
      <title>TensorFlow Object Detection API 多 GPU 卡平行計算，加速模型訓練速度教學</title>
      <link>https://blog.gtwang.org/programming/tensorflow-object-detection-api-multiple-gpu-parallel-training/</link>
      <pubDate>Tue, 26 Dec 2017 16:38:17 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/tensorflow-object-detection-api-multiple-gpu-parallel-training/</guid>
      <description>&lt;p&gt;本篇記錄如何使用多張 GPU 顯示卡，加速 TensorFlow Object Detection API 模型訓練的過程。&lt;/p&gt;
&lt;p&gt;雖然 TensorFlow Object Detection API 已經有支援多張 GPU 卡平行計算的功能，但是缺乏說明文件，所以我自己也不是非常確定該怎麼用，以下只是我目前嘗試出來的方式，僅供參考。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python 用 cProfile 測量程式效能瓶頸與 gprof2dot 視覺化分析教學</title>
      <link>https://blog.gtwang.org/programming/python-cprofile-and-gprof2dot-tutorial/</link>
      <pubDate>Fri, 15 Dec 2017 14:41:27 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/python-cprofile-and-gprof2dot-tutorial/</guid>
      <description>&lt;p&gt;這裡介紹如何使用 cProfile 測量 Python 程式效能、找出效能瓶頸，並以 gprof2dot 產生視覺化分析圖表。&lt;/p&gt;
&lt;p&gt;較為大型的計算程式在開發完成後，通常都會接續著進行程式的執行效能測量與分析（&lt;a href=&#34;https://en.wikipedia.org/wiki/Profiling_%28computer_programming%29&#34;&gt;profiling&lt;/a&gt;），找出程式的瓶頸所在，針對少數關鍵的程式碼進一步做最佳化，改善整體程式的執行速度。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Keras 儲存與載入訓練好的模型或參數教學</title>
      <link>https://blog.gtwang.org/programming/keras-save-and-load-model-tutorial/</link>
      <pubDate>Thu, 14 Dec 2017 10:30:11 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/keras-save-and-load-model-tutorial/</guid>
      <description>&lt;p&gt;這裡介紹如何使用 Keras 儲存與載入訓練好的模型或參數，以利重複使用或部署產品。&lt;/p&gt;
&lt;p&gt;訓練一個實際的類神經網路模型會需要非常大量的運算，所以在模型訓練完之後，最好可以把訓練好的模型參數儲存下來，這樣之後在使用時就可以省去重新訓練的時間。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python 使用 Protocol Buffers 教學與範例</title>
      <link>https://blog.gtwang.org/programming/python-protocol-buffers-tutorial/</link>
      <pubDate>Tue, 12 Dec 2017 15:44:04 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/python-protocol-buffers-tutorial/</guid>
      <description>&lt;p&gt;這裡介紹在 Python 使用 Protocol Buffers 格式來儲存資料的方式，以及實際應用範例。&lt;/p&gt;
&lt;p&gt;Protocol Buffers 是一種高效率、高彈性的結構化資料序列儲存格式，其類似 XML，但更省空間、處理效率更好，而且語法也更簡單。在使用 Protocol Buffers 前，我們會先定義資料的結構規則，再使用 Protocol Buffers 的編譯器產生適用於自己專案的 API 程式碼（例如 C++ 或 Python 程式碼等），然後在程式中呼叫這個 API 來存取 Protocol Buffers 格式的資料。&lt;/p&gt;</description>
    </item>
    <item>
      <title>TensorFlow Object Detection API 自行訓練模型教學，辨識特定物件</title>
      <link>https://blog.gtwang.org/programming/tensorflow-object-detection-api-custom-object-model-training-tutorial/</link>
      <pubDate>Mon, 11 Dec 2017 11:42:13 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/tensorflow-object-detection-api-custom-object-model-training-tutorial/</guid>
      <description>&lt;p&gt;這裡介如何使用自己的資料，以 TensorFlow Object Detection API 訓練出適用於特定物件的模型，建立自己的物件辨識系統。&lt;/p&gt;
&lt;p&gt;在 &lt;a href=&#34;https://blog.gtwang.org/programming/tensorflow-object-detection-api-tutorial/&#34;&gt;TensorFlow Object Detection API 自動辨識物件教學文章&lt;/a&gt;中，我們是直接使用既有已經訓練好的模型來辨識物件，但如果我們有一些比較特別的物件需要進行辨識，而這些物件又沒有被包含在既有模型中的話，就沒辦法直接使用既有的模型，這時候就需要先蒐集一些該物件的影像與標註資料，進一步訓練模型後，才能讓模型辨識出比較特別的物件。&lt;/p&gt;</description>
    </item>
    <item>
      <title>TensorFlow Object Detection API 自動辨識物件教學</title>
      <link>https://blog.gtwang.org/programming/tensorflow-object-detection-api-tutorial/</link>
      <pubDate>Fri, 01 Dec 2017 09:40:39 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/tensorflow-object-detection-api-tutorial/</guid>
      <description>&lt;p&gt;本篇介紹如何安裝與使用 TensorFlow Object Detection API，自動辨識照片或影片中的物件。&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://github.com/tensorflow/models/tree/master/research/object_detection&#34;&gt;Tensorflow Object Detection API&lt;/a&gt; 是 Google 以 TensorFlow 為基礎所開發的物件偵測程式開發架構（framework），其以開放原始碼的方式釋出，所有想要開發以深度學習自動辨識物件程式的人，都可以很方便的利用這套架構發展自己的系統。&lt;/p&gt;</description>
    </item>
    <item>
      <title>OpenCV 擷取網路攝影機串流影像，處理並寫入影片檔案教學</title>
      <link>https://blog.gtwang.org/programming/opencv-webcam-video-capture-and-file-write-tutorial/</link>
      <pubDate>Thu, 30 Nov 2017 12:32:45 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/opencv-webcam-video-capture-and-file-write-tutorial/</guid>
      <description>&lt;p&gt;這裡介紹如何使用 Python 與 OpenCV 擷取網路攝影機影像，處理與顯示即時的畫面影像，並將連續的畫面影像寫入影片檔案中儲存起來。&lt;/p&gt;
&lt;p&gt;若要使用 Python 取的網路攝影機的串流影像，可以透過 OpenCV 模組的 &lt;code&gt;VideoCapture&lt;/code&gt; 影片擷取功能來達成，至於寫入影片檔則可使用 &lt;code&gt;VideoWriter&lt;/code&gt;，操作方式非常簡單，以下是使用教學與簡單的入門範例。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python 與 OpenCV 基本讀取、顯示與儲存圖片教學</title>
      <link>https://blog.gtwang.org/programming/opencv-basic-image-read-and-write-tutorial/</link>
      <pubDate>Fri, 24 Nov 2017 11:50:06 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/opencv-basic-image-read-and-write-tutorial/</guid>
      <description>&lt;p&gt;這裡介紹如何使用 Python 與 OpenCV 讀取影像圖檔，以及將處理好的圖形寫入檔案。&lt;/p&gt;
&lt;h2 id=&#34;opencv-讀取圖片&#34;&gt;OpenCV 讀取圖片&lt;/h2&gt;
&lt;p&gt;首先引入 NumPy 與 OpenCV 的 Python 模組：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-python&#34; data-lang=&#34;python&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;numpy&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;as&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;np&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;cv2&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;OpenCV 本身就有提供讀取圖片檔的函數可用，讀取一般的圖片檔，只要呼叫 &lt;code&gt;cv2.imread&lt;/code&gt; 即可將圖片讀取進來：&lt;/p&gt;</description>
    </item>
    <item>
      <title>TensorFlow 與 Keras 指定 NVIDIA GPU 顯示卡與記憶體用量教學</title>
      <link>https://blog.gtwang.org/programming/tensorflow-keras-specify-gpu-and-memory-tutorial/</link>
      <pubDate>Fri, 17 Nov 2017 14:09:36 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/tensorflow-keras-specify-gpu-and-memory-tutorial/</guid>
      <description>&lt;p&gt;本篇介紹如何指定 TensorFlow 與 Keras 程式所使用的 GPU 顯示卡與記憶體用量。&lt;/p&gt;
&lt;p&gt;在 TensorFlow 或 Keras 中使用 NVIDIA 的 GPU 做運算時，預設會把整台機器上所有的 GPU 卡都獨佔下來，而且不管實際需要多少顯示卡的記憶體，每張卡的記憶體都會被佔滿，以下介紹如何調整設定，讓多張顯示卡可以分給多個程式或多人使用。&lt;/p&gt;</description>
    </item>
    <item>
      <title>使用 TensorFlow 內建的 Keras API 實作手寫數字辨識 CNN 程式</title>
      <link>https://blog.gtwang.org/programming/tensorflow-core-keras-api-cnn-tutorial/</link>
      <pubDate>Mon, 30 Oct 2017 15:17:25 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/tensorflow-core-keras-api-cnn-tutorial/</guid>
      <description>&lt;p&gt;這裡介紹如何使用 TensorFlow 內建的 Keras API 實作手寫數字辨識 CNN 程式。&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://keras.io/&#34;&gt;Keras&lt;/a&gt; 是一套高階的深度學習工具，今年 Google 將其納入 TensorFlow 的核心模組當中，發表於 &lt;a href=&#34;https://www.youtube.com/watch?v=UeheTiBJ0Io&#34;&gt;TensorFlow Dev Summit 2017&lt;/a&gt;，也就是說未來只要安裝好 TensorFlow 之後，就可以直接使用 Keras 的 API 函數，不需要另外安裝。&lt;/p&gt;</description>
    </item>
    <item>
      <title>CentOS Linux 安裝與使用 Keras 深度學習工具</title>
      <link>https://blog.gtwang.org/programming/centos-linux-install-keras-deep-learning-library/</link>
      <pubDate>Mon, 30 Oct 2017 10:36:04 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/centos-linux-install-keras-deep-learning-library/</guid>
      <description>&lt;p&gt;本篇介紹如何在 CentOS Linux 中安裝與使用 Keras 這套深度學習工具。&lt;/p&gt;
&lt;p&gt;談到深度學習（Deep Learning）的工具，大家都會想到 TensorFlow 這類的底層 framework，這類的基礎的 framework 由於保留了非常多的彈性空間，導致使用上比較不方便，如果想要快速進行依些簡單的問題測試，就可以使用 Keras 這類的高階工具。&lt;/p&gt;</description>
    </item>
    <item>
      <title>OpenCV 教學：實作 Graph Based Segmentation 圖形分割演算法</title>
      <link>https://blog.gtwang.org/programming/opencv-graph-based-segmentation-tutorial/</link>
      <pubDate>Wed, 25 Oct 2017 15:08:21 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/opencv-graph-based-segmentation-tutorial/</guid>
      <description>&lt;p&gt;本篇介紹如何在 OpenCV 中實作 Graph Based Segmentation 圖形分割演算法。&lt;/p&gt;
&lt;p&gt;在 &lt;a href=&#34;https://arxiv.org/abs/1311.2524&#34;&gt;R-CNN&lt;/a&gt; 中的候選區域是從 &lt;a href=&#34;https://ivi.fnwi.uva.nl/isis/publications/bibtexbrowser.php?key=UijlingsIJCV2013&amp;amp;bib=all.bib&#34;&gt;Selective Search&lt;/a&gt; 得來的，而 Selective Search 又是根據 &lt;a href=&#34;https://cs.brown.edu/~pff/papers/seg-ijcv.pdf&#34;&gt;Graph Based Segmentation&lt;/a&gt; 的結果而來，所以我在研究 R-CNN 的同時，也必須先看一下 Graph Based Segmentation 的理論與實做。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python 使用 zip 與 for 迴圈同時對多個 List 進行迭代</title>
      <link>https://blog.gtwang.org/programming/python-iterate-through-multiple-lists-in-parallel/</link>
      <pubDate>Fri, 06 Oct 2017 08:22:52 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/python-iterate-through-multiple-lists-in-parallel/</guid>
      <description>&lt;p&gt;這裡介紹如何在 Python 中同時對多個 list 進行迭代，在迴圈中每次各取一個 list 中的元素進行處理。&lt;/p&gt;
&lt;p&gt;

&lt;ins class=&#34;adsbygoogle&#34;
     style=&#34;display:block&#34;
     data-ad-client=&#34;ca-pub-7794009487786811&#34;
     data-ad-slot=&#34;9921134032&#34;
     data-ad-format=&#34;auto&#34;
     data-full-width-responsive=&#34;true&#34;&gt;&lt;/ins&gt;
&lt;script&gt;
     (adsbygoogle = window.adsbygoogle || []).push({});
&lt;/script&gt;
&lt;/p&gt;

&lt;h2 id=&#34;zip-與-for-迴圈&#34;&gt;&lt;code&gt;zip&lt;/code&gt; 與 &lt;code&gt;for&lt;/code&gt; 迴圈&lt;/h2&gt;
&lt;p&gt;在 Python 中若要將兩個 list 以迴圈的方式一次各取一個元素出來處理，可以使用 &lt;code&gt;zip&lt;/code&gt; 打包之後配合 &lt;code&gt;for&lt;/code&gt; 迴圈來處理：&lt;/p&gt;</description>
    </item>
    <item>
      <title>TensorFlow 寫入與讀取 TFRecords 檔案格式教學</title>
      <link>https://blog.gtwang.org/programming/tensorflow-read-write-tfrecords-data-format-tutorial/</link>
      <pubDate>Fri, 15 Sep 2017 20:25:38 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/tensorflow-read-write-tfrecords-data-format-tutorial/</guid>
      <description>&lt;p&gt;這裡介紹如何將各種資料儲存為 TFRecords 檔案，方便在 TensorFlow 中使用。&lt;/p&gt;
&lt;p&gt;TensorFlow 支援許多種讀取檔案的方式（例如 &lt;a href=&#34;https://blog.gtwang.org/programming/tensorflow-input-pipeline-notes/&#34;&gt;TensorFlow 輸入管線&lt;/a&gt;），而 TensorFlow 本身也有自己標準的 TFRecords 檔案格式，可以將資料與對應的資料標示（label）儲存在一起，方便在 TensorFlow 中使用。&lt;/p&gt;</description>
    </item>
    <item>
      <title>使用 TensorBoard 視覺化呈現 TensorFlow 計算流程教學</title>
      <link>https://blog.gtwang.org/programming/tensorboard-tensorflow-visualization-tutorial/</link>
      <pubDate>Fri, 08 Sep 2017 14:58:15 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/tensorboard-tensorflow-visualization-tutorial/</guid>
      <description>&lt;p&gt;本篇是 TensorBoard 的基本使用方法教學，以視覺化呈現 TensorFlow 的計算結果。&lt;/p&gt;
&lt;p&gt;通常實務上以 TensorFlow 建立的模型（例如深度神經網路）都相當複雜，若要對模型進行觀察、除錯與最佳化，都有一定的難度，而 TensorBoard 是一個專門用來呈現 TensorFlow 模型與資料的視覺化工具，其支援好幾種資料的呈現方式，讓程式設計者更容易掌握複雜的模型與資料。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python 的 with 語法使用教學：Context Manager 資源管理器</title>
      <link>https://blog.gtwang.org/programming/python-with-context-manager-tutorial/</link>
      <pubDate>Wed, 30 Aug 2017 16:50:32 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/python-with-context-manager-tutorial/</guid>
      <description>&lt;p&gt;這裡介紹 Python 的 &lt;code&gt;with&lt;/code&gt; 使用方法，以及自行建立 context manager 的方法與範例程式碼。&lt;/p&gt;
&lt;p&gt;資源的管理在程式設計上是一個很常見的問題，例如管理開啟的檔案、網路 socket 與各種鎖定（locks）等，最主要的問題點就在於我們必須確保這些開啟的資源在使用完之後，有確實被關閉（或釋放），如果忘記關閉這些資源，就會造成程式執行上的效能問題，甚至出現錯誤，而除了關閉之外，有些特殊的資源在使用完畢之後，還必須進行一些後續的清理動作，這些也都是資源管理上需要注意的。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python 列出目錄中所有檔案教學：os.listdir 與 os.walk</title>
      <link>https://blog.gtwang.org/programming/python-list-all-files-in-directory/</link>
      <pubDate>Sat, 26 Aug 2017 09:19:15 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/python-list-all-files-in-directory/</guid>
      <description>&lt;p&gt;這裡介紹如何在 Python 中列出目錄中的檔案，並且配合各種篩選方式，取得符合條件的檔案列表。&lt;/p&gt;
&lt;p&gt;在使用 Python 開發處理檔案的程式時，時常會需要把一個目錄中的檔案名稱全部列出來，然後再使用迴圈對每一個檔案進行後續的處理，以下是各種取得目錄中所有檔案名稱的方法與範例程式碼。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python 使用 MySQLdb 模組連接 MySQL 資料庫教學與範例</title>
      <link>https://blog.gtwang.org/programming/python-mysqldb-connect-mysql-database-tutorial/</link>
      <pubDate>Mon, 21 Aug 2017 12:15:15 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/python-mysqldb-connect-mysql-database-tutorial/</guid>
      <description>&lt;p&gt;這裡介紹 Python 的 &lt;code&gt;MySQLdb&lt;/code&gt; 模組的安裝與使用方法，查詢、新增、修改與刪除 MySQL 資料庫中的資料。&lt;/p&gt;
&lt;p&gt;Python 的 &lt;code&gt;MySQLdb&lt;/code&gt; 是一個 MySQL 資料庫連接模組，其內部核心是以 C 語言開發的，透過 &lt;code&gt;MySQLdb&lt;/code&gt; 包裝成 Python 模組，以下是 &lt;code&gt;MySQLdb&lt;/code&gt; 安裝與使用方法。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python 讀取與寫入壓縮檔教學，支援 gzip、bzip2、zip、tar 格式</title>
      <link>https://blog.gtwang.org/programming/python-data-compression-archiving-gzip-bz2-zip-tar/</link>
      <pubDate>Sat, 19 Aug 2017 14:05:34 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/python-data-compression-archiving-gzip-bz2-zip-tar/</guid>
      <description>&lt;p&gt;這裡介紹如何在 Python 中讀取與寫入各種格式的壓縮檔，包含 gzip、bz2、zip、tar 格式。&lt;/p&gt;
&lt;p&gt;Python 本身就有支援各種壓縮檔案格式的模組，我們可以透過這些模組來讀取或寫入壓縮檔，常見的 gzip、bz2、zip、tar 格式都有支援，使用上非常方便。以下是各種壓縮格式的壓縮與解壓縮教學，還有一些範例程式碼。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python 以模組名稱 __name__ 分辨程式執行模式</title>
      <link>https://blog.gtwang.org/programming/python-import-name-main-faq/</link>
      <pubDate>Fri, 18 Aug 2017 21:05:31 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/python-import-name-main-faq/</guid>
      <description>&lt;p&gt;這裡介紹如何以模組名稱 &lt;code&gt;__name__&lt;/code&gt; 變數分辨程式執行模式，判斷程式是否處於被引入（import）的狀態。&lt;/p&gt;
&lt;p&gt;在 Python 程式中時常可以看到 &lt;code&gt;__name__ == &amp;quot;__main__&amp;quot;&lt;/code&gt; 這個奇怪的判斷式，類似這樣：&lt;/p&gt;</description>
    </item>
    <item>
      <title>TensorFlow 輸入管線 Pipeline 從檔案讀取資料學習筆記</title>
      <link>https://blog.gtwang.org/programming/tensorflow-input-pipeline-notes/</link>
      <pubDate>Tue, 15 Aug 2017 13:33:59 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/tensorflow-input-pipeline-notes/</guid>
      <description>&lt;p&gt;本篇介紹如何在 TensorFlow 中以輸入管線讀取任意格式的檔案，並提供 Python 的範例程式碼。&lt;/p&gt;
&lt;p&gt;在 TensorFlow 中總共有三種讀取資料的方式，在之前的 &lt;a href=&#34;https://blog.gtwang.org/programming/tensorflow-google-machine-learning-software-library-tutorial/&#34;&gt;TensorFlow 入門教學文章&lt;/a&gt;中，我們已經使用過 placeholder 與常數這兩種比較簡單的方式，這裡將介紹第三種輸入管線的方式。&lt;/p&gt;</description>
    </item>
    <item>
      <title>使用 TensorFlow、Softmax 迴歸模型、CNN，實作數字辨識系統筆記</title>
      <link>https://blog.gtwang.org/programming/tensorflow-softmax-regression-hand-written-digits-recognizer-tutorial/</link>
      <pubDate>Thu, 29 Jun 2017 10:20:58 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/tensorflow-softmax-regression-hand-written-digits-recognizer-tutorial/</guid>
      <description>&lt;p&gt;本篇示範如何使用 Google 的 TensorFlow、softmax 迴歸模型、CNN，實作一套手寫辨識系統。&lt;/p&gt;
&lt;p&gt;如果您沒學過 Google 的 TensorFlow，建議先閱讀 &lt;a href=&#34;https://blog.gtwang.org/programming/tensorflow-google-machine-learning-software-library-tutorial/&#34;&gt;TensorFlow 機器學習軟體工具入門教學&lt;/a&gt;。&lt;/p&gt;</description>
    </item>
    <item>
      <title>TensorFlow 機器學習軟體工具入門教學與範例實作</title>
      <link>https://blog.gtwang.org/programming/tensorflow-google-machine-learning-software-library-tutorial/</link>
      <pubDate>Wed, 28 Jun 2017 10:21:01 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/tensorflow-google-machine-learning-software-library-tutorial/</guid>
      <description>&lt;p&gt;本篇為 TensorFlow 機器學習軟體工具的入門教學，並實作一個簡單的線性迴歸模型範例。&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://www.tensorflow.org/&#34;&gt;TensorFlow&lt;/a&gt; 是一套由 Google 所發展的開放原始碼機器學習函式庫，其以流程圖的概念呈現整個資料分析流程，在流程圖中的每一個節點都代表一個運算，連接不同節點的連線則代表資料的傳遞，程式設計者可以運用各種不同的運算節點（不同的演算法），組合成適用於各種問題的分析系統，運用 CPU 或 GPU 進行運算。&lt;/p&gt;</description>
    </item>
    <item>
      <title>ParaView 錄製 Python 指令稿，自動控制 ParaView 執行各種工作教學</title>
      <link>https://blog.gtwang.org/programming/paraview-trace-python-script-tutorial/</link>
      <pubDate>Thu, 23 Mar 2017 10:13:09 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/paraview-trace-python-script-tutorial/</guid>
      <description>&lt;p&gt;這裡示範如何使用 ParaView 的 Trace 功能錄製 Python 指令稿，自動控制 ParaView 執行各種工作。&lt;/p&gt;
&lt;p&gt;ParaView 本身就有支援 &lt;a href=&#34;https://www.paraview.org/paraview-docs/nightly/python/&#34;&gt;Python 語言的指令操作介面&lt;/a&gt;，在 GUI 視窗介面上的每一項操作都可以使用 Python 指令的方式達成，對於有自動化需求的人，就可以使用 Python 來撰寫指令稿控制 ParaView 處理各項繪圖工作。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Python 程式碼或註解加入中文教學，設定 UTF-8 編碼</title>
      <link>https://blog.gtwang.org/programming/python-chinese-comments-utf8-encoding/</link>
      <pubDate>Thu, 19 Jan 2017 21:20:58 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/python-chinese-comments-utf8-encoding/</guid>
      <description>&lt;p&gt;這裡介紹如何設定 Python 2 指令稿的檔案編碼，讓包含中文字的 Python 2 程式可以正常執行，不會產生亂碼。&lt;/p&gt;
&lt;p&gt;Python 2 在讀取指令稿並執行時，預設會將檔案以 ASCII 編碼的方式來處理，也就是說如果在 Python 2 程式碼或是註解當中有包含中文字的話，在執行時就會出錯，以下是解決 Python 2 中文編碼問題的教學。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ubuntu Linux 安裝 OpenCV 入門教學、C&#43;&#43; 與 Python 範例程式碼</title>
      <link>https://blog.gtwang.org/programming/ubuntu-linux-install-opencv-cpp-python-hello-world-tutorial/</link>
      <pubDate>Thu, 19 Jan 2017 15:12:12 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/ubuntu-linux-install-opencv-cpp-python-hello-world-tutorial/</guid>
      <description>&lt;p&gt;這裡介紹如何在 Ubuntu Linux 中安裝 OpenCV 影像處理與電腦視覺函式庫，並且使用 C/C++ 或 Python 開發 OpenCV 的影像處理與電腦視覺應用程式。&lt;/p&gt;
&lt;p&gt;

&lt;ins class=&#34;adsbygoogle&#34;
     style=&#34;display:block&#34;
     data-ad-client=&#34;ca-pub-7794009487786811&#34;
     data-ad-slot=&#34;9921134032&#34;
     data-ad-format=&#34;auto&#34;
     data-full-width-responsive=&#34;true&#34;&gt;&lt;/ins&gt;
&lt;script&gt;
     (adsbygoogle = window.adsbygoogle || []).push({});
&lt;/script&gt;
&lt;/p&gt;

&lt;h2 id=&#34;安裝-opencv-函式庫&#34;&gt;安裝 OpenCV 函式庫&lt;/h2&gt;
&lt;p&gt;在 Ubuntu Linux 我們可以使用 apt 安裝套件庫中已經編譯好的 OpenCV 函式庫：&lt;/p&gt;</description>
    </item>
    <item>
      <title>Linux 命令列 httpstat 網站效能測試工具</title>
      <link>https://blog.gtwang.org/linux/httpstat-curl-statistics-tool-to-check-website-performance/</link>
      <pubDate>Sat, 03 Dec 2016 11:58:07 +0800</pubDate>
      <guid>https://blog.gtwang.org/linux/httpstat-curl-statistics-tool-to-check-website-performance/</guid>
      <description>&lt;p&gt;&lt;code&gt;httpstat&lt;/code&gt; 是一個用於網站效能測試的 Python 指令稿，可在終端機下測試伺服器的回應速度。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;httpstat&lt;/code&gt; 是一個以純 Python 寫成的網站效能測試工具，這個工具只有單一個 Python 指令稿，僅需要 Python 的執行環境，不需要依賴任何其他的函數庫，不管是攜帶或使用上都很方便。&lt;/p&gt;</description>
    </item>
    <item>
      <title>用程式控制 TP-LINK 路由器的 ADSL 連線，自動更換 IP 位址</title>
      <link>https://blog.gtwang.org/programming/java-tp-link-router-adsl-change-ip/</link>
      <pubDate>Mon, 22 Sep 2014 07:52:11 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/java-tp-link-router-adsl-change-ip/</guid>
      <description>&lt;p&gt;本文以 TP-LINK 的 TL-WR741ND 路由器（router）為例，示範如何使用各種程式語言與工具遠端控制路由器的 ADSL 連線（斷線並重新連線），自動更換網路的 IP 位址。&lt;/p&gt;
&lt;p&gt;現在市面上大部分的路由器（或是 IP 分享器）都有網頁管理的介面，使用者可以透過網頁登入之後，管理路由器中的各種功能，而如果要更換 ADSL 的 IP 位址，最簡單的方式就是在網頁管理介面中，手動重新連線，由於非固定制的 ADSL 每次連線都會配發不同的 IP 位址，這樣自然就可以獲得一個新的 IP 位址了，這就是一般更換 IP 位址的原理。&lt;/p&gt;</description>
    </item>
    <item>
      <title>以 RabbitMQ 實作 Publish/Subscribe 模型（Python 版本）</title>
      <link>https://blog.gtwang.org/programming/rabbitmq-publish-subscribe-pattern-python/</link>
      <pubDate>Wed, 30 Apr 2014 09:19:00 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/rabbitmq-publish-subscribe-pattern-python/</guid>
      <description>&lt;p&gt;這裡我們使用 RabbitMQ 來實作 &lt;a href=&#34;http://en.wikipedia.org/wiki/Publish%E2%80%93subscribe_pattern&#34;&gt;publish-subscribe pattern&lt;/a&gt;，將訊息一次傳送給多個 consumers。&lt;/p&gt;
&lt;p&gt;前一個&lt;a href=&#34;https://blog.gtwang.org/programming/rabbitmq-work-queues-in-python/&#34;&gt;教學範例&lt;/a&gt;中，我們實作的工作佇列都是假設一個工作只會配送給一個 worker，現在我們要改變一下這個規則，讓一個訊息可以同時傳送給多個 consumers，而這樣的設計模式就稱為 publish/subscribe。&lt;/p&gt;</description>
    </item>
    <item>
      <title>以 RabbitMQ 實作工作佇列（Work Queues）（Python 版本）</title>
      <link>https://blog.gtwang.org/programming/rabbitmq-work-queues-in-python/</link>
      <pubDate>Wed, 16 Apr 2014 14:14:46 +0800</pubDate>
      <guid>https://blog.gtwang.org/programming/rabbitmq-work-queues-in-python/</guid>
      <description>&lt;p&gt;這裡介紹如何使用 RabbitMQ 實作工作佇列（work queues），將耗時的工作分配至多個 works 來處理。&lt;/p&gt;
&lt;p&gt;&lt;img alt=&#34;rabbitmq-work-queue-1&#34; loading=&#34;lazy&#34; src=&#34;https://blog.gtwang.org/programming/rabbitmq-work-queues-in-python/rabbitmq-work-queue-1.png&#34;&gt;&lt;/p&gt;
&lt;p&gt;在上一個 &lt;a href=&#34;https://blog.gtwang.org/linux/ubuntu-linux-install-rabbitmq/&#34;&gt;RabbitMQ 訊息佇列教學&lt;/a&gt;中，我們實作一個可以透過 queue 傳送與接收訊息的簡單架構，這裡我們將繼續修改之前的範例程式碼，加入工作處理的功能。&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
