Python Image Opencv图像处理各种方法
2018-01-30 15:24
1051 查看
主要从这里学习到:http://www.cdadata.com/17816
图像语义分割结果要二分类或者多分类,会需要做二值化处理。
最开始想法很暴力,直接遍历,一个一个换:
但是这样做就很慢,毕竟暴力解法不可取~~~所以找找现成的库。
原图类似这样的:
要转换成黑白两色。
先试试用PIL:
结果是这样的,不是我们想要的样子。
之后就用Opencv试试:
这样的结果才是我们想要的。
如果要黑白色对换,只需将cv2.THRESH_BINARY换成cv2.THRESH_BINARY_INV,结果如图:
就这样~
吐嘲下上传图片功能,有时只能保存了再打开才能上传。
图像语义分割结果要二分类或者多分类,会需要做二值化处理。
最开始想法很暴力,直接遍历,一个一个换:
cv_pic = cv2.imread(img, cv2.IMREAD_GRAYSCALE) for i in range(len(cv_pic)): for j in range(len(cv_pic[i])): # print(cv_pic[i][j]) if cv_pic[i][j] > 127.5: cv_pic[i][j] = 255 elif cv_pic[i][j] < 127.5: cv_pic[i][j] = 0 cv2.imwrite(cv_path + '/' + imgname, cv_pic)
但是这样做就很慢,毕竟暴力解法不可取~~~所以找找现成的库。
原图类似这样的:
要转换成黑白两色。
先试试用PIL:
I = Image.open(img) L = I.convert('1') L.save("242.png")
结果是这样的,不是我们想要的样子。
之后就用Opencv试试:
cv_pic = cv2.imread(img, cv2.IMREAD_GRAYSCALE) binary, cv_save = cv2.threshold(cv_pic,127,255,cv2.THRESH_BINARY) print(cv_save) # cv2.imshow("haha", cv_save) # cv2.show() # exit(1) cv2.imwrite(imgname, cv_save)
这样的结果才是我们想要的。
如果要黑白色对换,只需将cv2.THRESH_BINARY换成cv2.THRESH_BINARY_INV,结果如图:
就这样~
吐嘲下上传图片功能,有时只能保存了再打开才能上传。
相关文章推荐
- python深度学习库pytorch::transforms练习:opencv,scikit-image,PIL图像处理库比较
- 【opencv+python】图像处理之二、几何变换(仿射与投影)的应用
- OpenCV学习笔记8 OpenCV图像处理模块ImgProc Module. Image Processing(一)
- OpenCV学习笔记10 OpenCV图像处理模块ImgProc Module. Image Processing(三)
- Python图像处理(1):替换OpenCV
- OpenCV学习笔记12 OpenCV图像处理模块ImgProc Module. Image Processing(五)
- Winform应用程序处理图像Image时内存不足异常时的处理方法
- [转]opencv3 图像处理 之 图像缩放( python与c++实现 )
- python使用TensorFlow进行图像处理的方法
- python+opencv 图像预处理
- 各种图像处理类库的比较及选择(The Comparison of Image Processing Libraries)
- 5-python图像处理opencv(1.读图,显示,转换,存储)
- OpenCV-Python 图像与视频处理
- OpenCV&图像处理_3:以腐蚀[eroding]和膨胀[dilating]为基础的形态学操作和图像金字塔[image pyramids]
- Python3与OpenCV3.3 图像处理(二十二)--对象测量(纯代码)
- Python 调用 opencv 处理图像
- 如何使用OpenCV的处理图像,文字变得锐利和清晰?(How to use OpenCV to process image so that the text become sharp and clea
- Python图像处理库PIL的Image模块介绍(二)
- Python-Image 基本的图像处理操作
- Python-OpenCV 处理图像(二):滤镜和图像运算