發表文章

目前顯示的是有「OpenCV」標籤的文章

完美關掉 Python OpenCV 圖片視窗的方法

  相信各位做影像的同行在驗證自己演算法的時候, 總是像我一樣眼見為憑、需要把圖片秀出來對吧?

想知道網戀對象有沒有修圖嗎?試試看這款修圖偵測機器人!

圖片
  前陣子在咱們一群影像愛好者的群組開始流傳一套程式, 一套號稱能檢測愛情動作片封面詐欺的程式!

解決 OpenCV 編譯後不定時崩潰、失效等問題

圖片
  這邊提供 OpenCV 編譯後崩潰的可能解決方法: 我的環境是 OpenCV 4.5.4、Ubuntu 22.04, 並使用 g++ 11.4.0 編譯我的專案。 我遇到的情境問題是,我得到一包 C/C++ 的專案, 裡面用 Makefile 來整合編譯專案,裡面包含我自己寫的一段高斯濾波程式碼。 這貨整包編譯時沒有出錯; 獨立把高斯濾波程式碼放到另一個編譯、運行也都沒有出錯。 但當我在源碼裡面運行這段高斯濾波程式碼時"有機率"會出錯: int ksize = 3; cv::Size size = image.size(); int width = size.width; int height = size.height; cv::Mat blurred_image(height, width, CV_8UC1, cv::Scalar::all(0)); cv::GaussianBlur(grey, blurred_image, cv::Size(ksize, ksize), 0, 0); 然而我給定的高斯核大小為 3x3, 非常奇怪,程式會跳說高斯核定義不是奇數,所以不合法: error: (-215:Assertion failed) ksize.width > 0 && ksize.width % 2 == 1 && ksize.height > 0 && ksize.height % 2 == 1 in function 'createGaussianKernels' 除此之外,當我想使用旋轉圖片、在圖片上畫點的功能也全部失效,但是編譯又沒有出錯, 這件事情真的是非常奇怪。 因為是運行時錯誤,於是我先用 GDB 檢查了函式是否重複定義: 然而並沒有,這就奇了怪了。 後來我開始埋 log 想辦法抓鬼,也完全抓不到。 解決方法: 把專案的 Makefile 打開,有關於 OpenCV 的部份改寫, 讓  Makefile 繞過 pkg-config ,手動給定 OpenCV.hpp 還有 libopencv_XXX.so 的路徑。 如果我的  OpenCV.hpp 放在  /usr/inclu...

Python 寫自動白平衡 - 完美反射核心

圖片
  最近上班遇到一些圖片顏色偏離原色, 身為影像工程從業者就會想自己寫 3A算法來校正。

不均勻光源下的優化 SSIM 演算法

圖片
  這篇是 SSIM 系列第三篇,接續前篇  使用 PyTorch 實做 2D 影像捲積 , 要來談一下 SSIM 如何在不均勻光源下優化 SSIM。

使用 PyTorch 實做 2D 影像捲積

圖片
 承上篇: Structural Similarity(SSIM) 的 PyTorch 實現 由於我 3D 影像處理做太多(X) 2D 影像處理還沒有恢復記憶(O) 上次在刻高斯濾波的時候忘記 PyTorch Kit 的 Convolution 一個很重要的特性:

OpenCV AI Kit 1 (OAK-1)從零開始的傻瓜式教學

圖片
  起因是因為主管塞了兩盒工程機包裝的東西給我, 叫我趕快做點東西出來。 :大勾請問這兩盒是什麼? "窩也不是很清楚,應該是攝影機吧?" "上禮拜才送來的,就交給你好好幹了!(瞇眼。"