日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

opencv把图片转换成二进制_如何增强图像,然后使用Python和OpenCV将其转换为二进制图像?...

發布時間:2023/11/27 生活经验 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 opencv把图片转换成二进制_如何增强图像,然后使用Python和OpenCV将其转换为二进制图像?... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我創建了一個簡單的例子來說明我要做的事情:#!/usr/bin/python

#---------------------------------------------------------------------

# imports

# >>> cv2.__version__

# '2.4.6.1'

# >>> scipy.__version__

# '0.12.0'

#---------------------------------------------------------------------

import cv2

from scipy.signal import wiener

#---------------------------------------------------------------------

# functions

#---------------------------------------------------------------------

def enhance_image(input_image):

my_im = input_image.copy()

my_im = wiener(my_im)

return my_im

#---------------------------------------------------------------------

# Main

#---------------------------------------------------------------------

filename="./data/5b2013d0-7939-48a6-94eb-045495b85343.png"

im=cv2.imread(filename)

cv2.imshow('Original',im)

gray_im = cv2.cvtColor(im, cv2.COLOR_BGR2GRAY)

cv2.imshow('Gray',gray_im)

enhanced_im=enhance_image(gray_im)

cv2.imshow('Enhanced',enhanced_im)

# this fails

(thresh, bw_im) = cv2.threshold(enhanced_im, 128, 255, cv2.THRESH_BINARY_INV | cv2.THRESH_OTSU)

cv2.imshow('Black and White',bw_im)

key = cv2.waitKey()

代碼加載一個圖像,將其轉換為灰度,使用scipy.signal模塊運行wiener算法來增強圖像,之后我想將圖像轉換為二值圖像(黑白)。當我運行上面的代碼時,我得到以下錯誤:OpenCV Error: Assertion failed (src.type() == CV_8UC1) in threshold, file /home/mrichey/Downloads/opencv2.4/opencv-2.4.6.1/modules/imgproc/src/thresh.cpp, line 719

Traceback (most recent call last):

File "./simple_example.py", line 37, in

(thresh, bw_im) = cv2.threshold(enhanced_im, 128, 255, cv2.THRESH_BINARY_INV | cv2.THRESH_OTSU)

cv2.error: /home/mrichey/Downloads/opencv2.4/opencv->2.4.6.1/modules/imgproc/src/thresh.cpp:719: error: (-215) src.type() == CV_8UC1 in function threshold

我對這個錯誤的研究使我相信傳遞給threshold函數的圖像類型是錯誤的,但我不知道它需要轉換成什么,也不知道如何進行轉換。在

當我把gray_im傳入threshold時,它工作正常。我注意到gray_im都是整數,但是enhanced_im有浮點值,所以我嘗試修改我的enhance_image函數:

^{pr2}$

然而,我也犯了同樣的錯誤。在

總結

以上是生活随笔為你收集整理的opencv把图片转换成二进制_如何增强图像,然后使用Python和OpenCV将其转换为二进制图像?...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。