本站消息

  出租广告位,需要合作请联系站长

  今日名言-想象你自己对困难作出的反应,不是逃避或绕开它们,而是面对它们,同它们打交道,以一种进取的和明智的方式同它们奋斗 。——马克斯威尔·马尔兹

  今日名言-用谅解、宽恕的目光和心理看人、待人。人就会觉得葱笼的世界里,春意盎然,到处充满温暖。——蔡文甫


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

opencv-python实现PS中的油漆填充功能2 自己输入坐标填充

发布于2021-07-25 07:34     阅读(974)     评论(0)     点赞(5)     收藏(3)


直接上效果图

 可以通过命令行输入x,y的坐标,即可填充。

代码如下:

  1. import cv2 as cv
  2. import numpy as np
  3. def fill_color_demo(image,x,y): # 定义一键填充颜色的函数
  4. Img2 = image.copy() # 对输入的图片进行复制
  5. h, w = image.shape[:2] # 获得图片的长宽
  6. mask = np.zeros([h + 2, w + 2], np.uint8) # mask必须行和列都加2,且必须为uint8单通道阵列,填充边缘需要多2个像素,否则会报错
  7. cv.floodFill(Img2, mask, (x, y), (127, 127, 127), (100, 100, 100), (50, 50, 50), cv.FLOODFILL_FIXED_RANGE)
  8. # cv.floodFill,参数1,:表示输入图片,参数2:表示单通道的掩码,参数3:表示泛洪算法的起始点,参数4表示填充的颜色,参数5,6表示当前观察像素点与邻域像素点最大正负差值
  9. # x坐标是从左到右,y坐标是从上到下
  10. cv.imshow("result", Img2) # 显示结果图片
  11. while True:
  12. print('请输入x坐标和y坐标')
  13. number1 = input('Input x:')
  14. number2 = input('Input y:')
  15. try:
  16. image = cv.imread('2.jpg')
  17. cv.imshow('input', image)
  18. except:
  19. print('Open Error! Try again!')
  20. continue
  21. else:
  22. r_image = fill_color_demo(image,int(number1),int(number2))
  23. cv.waitKey(0)

记得点赞关注加收藏哦 更新不断!!!

原文链接:https://blog.csdn.net/qq_34904125/article/details/119024061



所属网站分类: 技术文章 > 博客

作者:你做的菜有点咸

链接:http://www.pythonpdf.com/blog/article/460/c363091870d642bb1516/

来源:编程知识网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

5 0
收藏该文
已收藏

评论内容:(最多支持255个字符)