如何在photoshop

时间:2018-04-26 17:52:58

标签: python image opencv image-processing image-manipulation

我需要使用与菜单中的Photoshop相同的方式使用python:“Image> Adjustments> Levels ...”

在此窗口中:

Photoshop Levels

我需要使用Python将颜色调整为第一个值为13。

Photoshop Levels - Value 13

可以使用一些库image-scikit,opencv,numpy或其他东西来完成吗?

我已经看到了几个自动平衡和自动对比等,但我需要在几个图像上修改该值。

感谢。

1 个答案:

答案 0 :(得分:1)

如果我理解正确,那么您正在获取RBG值并设置所有低于最小阈值的值并将它们设置为等于最小阈值?如果是这种情况,那么我们可以使用opencv作为numpy数组加载图像并使用数组操作来实现相同的结果。

Article

所以在过滤之前我们有一个看起来像这样的数组:

import cv2
import numpy as np

min_level = 20

#im = cv2.imread("name.jpg") # loads image as np array
im = np.arange(75.).reshape(5, 5, 3) # pretend image to show filtering 
im[im < min_level] = min_level # set all indices where value is less than min_level to min_level

过滤后看起来像:

>>> im
[[[ 0.  1.  2.]
  [ 3.  4.  5.]
  [ 6.  7.  8.]
  [ 9. 10. 11.]
  [12. 13. 14.]]

 [[15. 16. 17.]
  [18. 19. 20.]
  [21. 22. 23.]
  [24. 25. 26.]
  [27. 28. 29.]]

 [[30. 31. 32.]
  [33. 34. 35.]
  [36. 37. 38.]
  [39. 40. 41.]
  [42. 43. 44.]]

 [[45. 46. 47.]
  [48. 49. 50.]
  [51. 52. 53.]
  [54. 55. 56.]
  [57. 58. 59.]]

 [[60. 61. 62.]
  [63. 64. 65.]
  [66. 67. 68.]
  [69. 70. 71.]
  [72. 73. 74.]]]