[英]How to sum all the pixels of a PIL image?
我正在做一个项目,涉及从图像中获取每个像素而不是平均它,我遇到了一些问题,这是代码
for i in range(0, 3):
for j in range(0, 3):
img = Image.open("Row " + str(i + 1) + " Col " + str(j + 1) + ".png", "r")
width, height = img.size
pixel_values = list(img.getdata())
pixel_values = np.array(pixel_values).reshape((width, height, 3))
total = list(sum(pixel_values) / len(pixel_values))
print("TOTAL: " + str(total))
和 output
TOTAL: [array([150.73267327, 147.4950495 , 135.68316832]), array([157.04950495, 153.71287129, 137.23762376]), array([162.94059406, 160.89108911, 142.02970297]), array([138.05940594, 137.72277228, 129.43564356]), array([124.86138614, 126.15841584, 124.0990099 ]), array([138.1980198 , 139.33663366, 138.45544554]), array([119.24752475, 120.17821782, 119.96039604]), array([65.2970297 , 61.94059406, 61. ]), array([42.84158416, 33.3960396 , 31.3960396 ]), array([55.82178218, 38.18811881, 33.5049505 ]), array([93.87128713, 58.76237624, 45.26732673]), array([152.16831683, 90.93069307, 58.16831683]), array([187.72277228, 100.9009901 , 45.12871287]), array([191.84158416, 89.82178218, 22.6039604 ]), array([194.38613861, 87.99009901, 19.77227723]), array([196.00990099, 87.94059406, 19.2970297 ]), array([198.16831683, 88.9009901 , 19.36633663]), array([199.15841584, 88.64356436, 18.6039604 ]), array([198.68316832, 87.83168317, 17.48514851]), array([199.31683168, 87.86138614, 17.32673267]), array([199.44554455, 87.54455446, 17.21782178]), array([199.67326733, 87.93069307, 17.34653465]), array([199.78217822, 88.26732673, 17.26732673]), array([199.99009901, 88.14851485, 16.94059406]), array([199.74257426, 88.10891089, 17.05940594]), array([200.30693069, 88.66336634, 18.17821782]), array([200.37623762, 88.47524752, 17.74257426]), array([201.2970297 , 88.92079208, 17.79207921]), array([200.33663366, 87.71287129, 16.41584158]), array([201.11881188, 88.2970297 , 16.9009901 ]), array([201.4950495 , 88.72277228, 17. ]), array([200.65346535, 88.12871287, 16.45544554]), array([200.11881188, 87.73267327, 16.33663366]), array([200.10891089, 87.79207921, 16.28712871]), array([200.36633663, 87.91089109, 16.16831683]), array([200.58415842, 88.10891089, 16.30693069]), array([199.65346535, 87.17821782, 15.42574257]), array([200.14851485, 87.42574257, 16.12871287]), array([200.2970297 , 87.16831683, 15.88118812]), array([201.00990099, 88.0990099 , 16.85148515]), array([200.11881188, 87.55445545, 16.7029703 ]), array([200.37623762, 87.87128713, 16.21782178]), array([200.55445545, 87.89108911, 16.30693069]), array([200.48514851, 87.7029703 , 15.93069307]), array([200.77227723, 87.79207921, 16.33663366]), array([200.1980198 , 87.59405941, 16.94059406]), array([201.27722772, 88.76237624, 17.65346535]), array([200.51485149, 88.28712871, 16.61386139]), array([201.43564356, 88.33663366, 16.69306931]), array([200.52475248, 87.2970297 , 15.38613861]), array([200.6039604 , 87.75247525, 15.93069307]), array([200.67326733, 87.95049505, 16.04950495]), array([201.16831683, 88.75247525, 16.6039604 ]), array([200.43564356, 88.18811881, 16.17821782]), array([201.00990099, 88.14851485, 16.35643564]), array([200.83168317, 87.85148515, 15.98019802]), array([200.66336634, 87.73267327, 15.52475248]), array([201.13861386, 88.24752475, 16. ]), array([200.56435644, 87.63366337, 15.56435644]), array([200.89108911, 87.48514851, 15.79207921]), array([201.12871287, 87.66336634, 16.32673267]), array([201.64356436, 87.95049505, 16.78217822]), array([200.93069307, 87.33663366, 15.4950495 ]), array([201.12871287, 87.83168317, 15.97029703]), array([201.23762376, 88.01980198, 15.98019802]), array([200.55445545, 87.68316832, 15.92079208]), array([201.0990099 , 87.92079208, 15.97029703]), array([201.10891089, 87.91089109, 15.82178218]), array([201.40594059, 87.6039604 , 15.13861386]), array([201.44554455, 87.63366337, 15.55445545]), array([201.6039604 , 87.88118812, 16.18811881]), array([201.97029703, 87.65346535, 15.93069307]), array([200.94059406, 86.33663366, 14.52475248]), array([201.03960396, 86.63366337, 13.75247525]), array([200.74257426, 86.97029703, 13.8019802 ]), array([200.10891089, 86.5049505 , 13.52475248]), array([198.92079208, 85.92079208, 12.77227723]), array([197.98019802, 85.63366337, 13.38613861]), array([198.4950495 , 85.79207921, 13.55445545]), array([197.54455446, 85.46534653, 13.30693069]), array([197.69306931, 85.95049505, 13.67326733]), array([197.51485149, 85.92079208, 13.47524752]), array([197.56435644, 86.12871287, 13.81188119]), array([197. , 86.06930693, 14.08910891]), array([196.88118812, 85.97029703, 13.5049505 ]), array([196.35643564, 85.11881188, 12.71287129]), array([195.86138614, 85.0990099 , 12.48514851]), array([195.15841584, 84.81188119, 12.78217822]), array([194. , 84.83168317, 13.35643564]), array([190.63366337, 83.66336634, 13.41584158]), array([187.96039604, 82.63366337, 13.78217822]), array([180.31683168, 80.66336634, 15.93069307]), array([166.03960396, 77.46534653, 25.25742574]), array([88.46534653, 45.98019802, 27. ]), array([42.02970297, 31.15841584, 29.57425743]), array([33.92079208, 28.25742574, 27.22772277]), array([30.18811881, 25.94059406, 25.51485149]), array([29.85148515, 25.75247525, 25.22772277]), array([30.10891089, 25.84158416, 25.44554455]), array([30.15841584, 26. , 25.95049505]), array([27.71287129, 23.79207921, 23.67326733])]
TOTAL: [array([22.31683168, 19.92079208, 20.45544554]), array([23.45544554, 20.98019802, 21.76237624]), array([22.24752475, 19.87128713, 20.61386139]), array([31.42574257, 30.44554455, 31.05940594]), array([104.45544554, 104.33663366, 105.20792079]), array([32.20792079, 28.98019802, 29.34653465]), array([33.30693069, 28.3960396 , 28.79207921])...74257426]), array([ 18.63366337, 87.43564356,
TOTAL: [array([20.5049505 , 18.83168317, 19.06930693]), array([17.16831683, 16.03960396, 16.71287129]), array([20.77227723, 20.27722772, 21.65346535]), array([69.94059406, 69.6039604 , 69.75247525]), array([57.92079208, 56.02970297, 55.43564356]), array([36.75247525, 33.00990099, 30.84158416]), array([34.95049505, 30.06930693, 27.92079208]), array([32.78217822, 28.04950495, 25.94059406]), array([33.76237624, 28.66336634, 26.42574257]), array([35.14851485, 30.08910891, 26.65346535]), array([37.86138614, 32.0990099 , 25.94059406]), array([53.77227723, 48.00990099, 31.6039604 ]), array([155.0990099 , 148.82178218, 68.36633663]), array([155.71287129, 146.25742574, 20.42574257]), , 17.66336634]), array([159.64356436, 150.41584158, 16.73267327]), array([159.03960396, 149.76237624, 17.07920792]), array([159.0990099 , 149.61386139, 17.82178218]), array([158.32673267, 148.7029703 , 18.94059406]), array([156.68316832, 146.3960396 , 19.59405941]), array([154.52475248, 143.94059406, 19.91089109]), array([152.69306931, 142.43564356, 22.25742574]), array([148.95049505, 138.34653465, 23.66336634]), array([142.87128713, 132.27722772, 33.37623762]), array([117.61386139, 107.61386139, 39.94059406]), array([69.86138614, 61.52475248, 31.41584158]), array([33.42574257, 28.27722772, 21.08910891]), array([29.16831683, 26.42574257, 23.12871287]), array([29.93069307, 27.23762376, 23.78217822]), array([32.76237624, 30.36633663, 26.8019802 ]), array([38.38613861, 35.74257426, 32.25742574]), array([62.72277228, 58.68316832, 55.11881188])]
TOTAL: [array([148.99009901, 148.12871287, 140.7029703 ]), array([154.83168317, 158.13861386, 155.98019802]), array([163.48514851, 167.21782178, 167.51485149]), array([149.57425743, 151.25742574, 151.6039604 ]), array([80.68316832, 79.28712871, 80.31683168]), array([34.94059406, 27.83168317, 27.55445545]), array([32.51485149, 21.89108911, 20.56435644]), array([39.78217822, 23.83168317, 20.47524752]), array([63.4950495 , 36.03960396, 27.16831683]), array([120.8019802 , 64.12871287, 38.28712871]), array([170.3960396 , 82.43564356, 30.26732673]), array([180.21782178, 73.99009901, 13.34653465]), array([182.35643564, 70.14851485, 9.53465347]), array([184.56435644, 70.37623762, 9.03960396]), array([186.47524752, 71.05940594, 8.67326733]), array([186.48514851, 70.51485149, 8.56435644]), array([187.76237624, 71.68316832, 9.28712871]), array([188.55445545, 72.38613861, 9.0990099 ]), array([189.63366337, 73.26732673, 10.33663366]), array([189.06930693, 72.35643564, 10. ]), array([190.1980198 , 72.52475248, 9.23762376]), array([190.23762376, 72.07920792, 8.74257426]), array([189.91089109, 71.68316832, 8.30693069]), array([190.20792079, 71.94059406, 8.26732673]), array([190.00990099, 71.9009901 , 8.27722772]), array([190.69306931, 72.20792079, 8.25742574]), array([191.82178218, 72.5049505 , 7.87128713]), array([193.12871287, 72.78217822, 7.66336634]), array([193.41584158, 72.63366337, 7.40594059]), array([193.66336634, 72.75247525, 7.72277228]), array([193.95049505, 73. , 8.08910891]), array([192.89108911, 71.86138614, 6.61386139]), array([194.11881188, 72.52475248, 7.0990099 ]), array([194.5049505 , 72.37623762, 7.44554455]), array([194.73267327, 72.10891089, 7.51485149]), array([194.36633663, 71.99009901, 7.14851485]), array([194.32673267, 72. , 7.30693069]), array([193.76237624, 71.62376238, 6.75247525]), array([194.41584158, 72.14851485, 7.24752475]), array([195.05940594, 72.88118812, 7.73267327]), array([194.30693069, 72.16831683, 7.34653465]), array([194.8019802 , 72.67326733, 7.38613861]), array([194.31683168, 72.27722772, 6.99009901]), array([194.17821782, 72.2970297 , 6.76237624]), array([195.23762376, 72.97029703, 7.06930693]), array([195.34653465, 72.79207921, 7.25742574]), array([194.46534653, 72.27722772, 7.02970297]), array([195.38613861, 72.83168317, 7.65346535]), array([195.10891089, 72.69306931, 7.55445545]), array([195.23762376, 72.79207921, 6.82178218]), array([195.12871287, 72.87128713, 7.18811881]), array([195.12871287, 72.64356436, 7.18811881]), array([195.56435644, 72.71287129, 7.22772277]), array([195.45544554, 72.56435644, 7.22772277]), array([196.41584158, 73.76237624, 8.1980198 ]), array([195.59405941, 73. , 7.82178218]), array([195.77227723, 72.8019802 , 7.79207921]), array([196.48514851, 73.22772277,
TOTAL: [array([12.8019802 , 7.52475248, 7.75247525]), array([12.17821782, 6.92079208, 7.22772277]), array([12.38613861, 7.08910891, 7.34653465]), array([15.82178218, 10.1980198 , 10.43564356]), 129, 9.89108911, 13.16831683]), array([183.18811881, 10.23762376, 13.47524752]), array([184.86138614, 9.55445545, 12.99009901]), array([186.4950495 , 8.62376238, 12.28712871]), array([189.04950495, 9.26732673, 12.66336634]), array([190.5049505 , 8.68316832, 11.96039604]), array([191.40594059, 7.86138614, 11.26732673]), array([193.27722772, 7.78217822, 11.05940594]), array([193.8019802 , 7.20792079, 10.36633663]), array([194.83168317, 6.91089109, 10.24752475]), array([195.91089109, 6.8019802 , 10.46534653]), array([196.57425743, 6.77227723, 10.71287129]), array([197.5049505 , 6.84158416, 10.97029703]), array([197.44554455, 6.44554455, 10.65346535]), array([197.58415842, 6.46534653, 10.38613861]), array([197.2970297 , 5.7029703 , 9.33663366]), array([197.67326733, 5.51485149, 9.16831683]), array([198.08910891, 5.17821782, 9.04950495]), array([197.73267327, 4.78217822, 8.62376238]), array([198.51485149, 5.41584158, 9.24752475]), array([198.55445545, 5.2970297 , 8.99009901]), array([198.35643564, 5. , 8.76237624]), array([198.58415842, 5.03960396, 9.0990099 ]), array([198.18811881, 4.74257426, 8.69306931]), array([197.89108911, 4.89108911, 8.89108911]), array([197.40594059, 4.72277228, 8.62376238]), array([196.2970297 ,
TOTAL: [array([20.8019802 , 15.78217822, 15.25742574]), array([19.00990099, 14.95049505, 14.59405941]), array([18.24752475, 14.4950495 , 14.27722772]), array([16.6039604 , 12.84158416, 12.94059406]), array([10.55445545, 6.87128713, 7.68316832]), array([11.15841584, 7.43564356, 8.13861386]), array([11.69306931, 7.75247525, 8.47524752]), array([14.51485149, 10.54455446, 10.68316832]), array([23.2970297 , 18.97029703, 19.53465347]), array([29.82178218, 25.06930693, 26.03960396]), array([29.98019802, 24.91089109, 25.78217822]), array([32.20792079, 26.9009901 , 27.1980198 ]), array([35.47524752, 29.57425743, 29.79207921]), array([39.61386139, 31.83168317, 31.25742574]), array([42.83168317, 32.54455446, 30.44554455]), array([83.9009901 , 32.84158416, 32.33663366]), array([105.07920792, 25.48514851, 27.12871287]), array([120.76237624, 19.66336634, 22.62376238]), array([133.52475248, 17.25742574, 21.4950495 ]), array([144.63366337, 15.64356436, 21.24752475]), array([157.11881188, 15.71287129, 22.59405941]), array([163.94059406, 13.07920792, 20.86138614]), array([170.74257426, 13.66336634, 20.8019802 ]), array([176.43564356, 12.62376238, 20.15841584]), array([181.28712871, 11.5049505 , 19.5049505 ]), array([184.12871287, 10.20792079, 18.43564356]), array([187.16831683, 9.63366337, 18.22772277]), array([188.2970297 , 8.02970297, 16.79207921]), array([188.81188119, 7.63366337, 16.28712871]), array([189.22772277, 7.63366337, 16.18811881]), array([189.43564356, 7.41584158, 16.2970297 ]), array([189.98019802, 7.82178218, 16.9009901 ]), array([189.27722772, 7. , 16.00990099]), array([189.51485149, 7.25742574, 16.31683168]), array([189.15841584, 7.22772277, 16.28712871]), array([189.06930693, 7.13861386, 16.44554455]), array([189.27722772, 7.27722772, 16.4950495 ]), array([189.34653465, 7.28712871, 16.25742574]), array([189.64356436, 7.73267327, 16.64356436]), array([189.05940594, 7.20792079, 16.47524752]), array([189.59405941, 7.61386139, 16.83168317]), array([189.41584158, 7.47524752, 16.71287129]), array([189.45544554, 7.47524752, 16.78217822]), array([188.85148515, 7.17821782, 16.79207921]), array([189.06930693, 7.26732673, 16.75247525]), array([188.9009901 , 7.2970297 , 16.56435644]), array([189.46534653, 7.81188119, 17.12871287]), array([189.26732673, 7.68316832, 17.11881188]), array([188.69306931, 7.12871287, 16.20792079]), array([188.6039604 , 7.04950495, 16.22772277]), array([189.12871287, 7.44554455, 16.7029703 ]), array([188.73267327, 7.52475248, 16.68316832]), array([188.81188119, 7.57425743, 16.79207921]), array([188.89108911, 7.4950495 , 16.5049505 ]), array([188.88118812, 7.38613861, 16.26732673]), array([189.01980198, 7.62376238, 16.54455446]), array([188.86138614, 7.47524752, 16.71287129]), array([188.58415842, 7.38613861, 16.51485149]), array([188.51485149, 7.27722772, 16.51485149]), array([188.35643564, 7.22772277, 16.36633663]), array([188.61386139, 7.66336634, 16.72277228]), array([187.95049505, 7.31683168, 16.28712871]), array([188.53465347, 7.86138614, 16.81188119]), array([188.24752475, 7.58415842, 16.7029703 ]), array([187.95049505, 7.18811881, 16.3960396 ]), array([188.23762376, 7.92079208, 16.9009901 ]), array([188.55445545, 8.18811881, 17.34653465]), array([188.17821782, 7.75247525, 16.84158416]), array([188.01980198, 8.15841584, 17.22772277]), array([187.64356436, 7.82178218, 17.20792079]), 38614, 101.67326733, 149.53465347]), array([ 8.52475248, 101.11881188, 149.21782178]), array([ 8.45544554, 101.13861386, 149.27722772]), array([ 8.17821782, 100.71287129, 148.55445545]), array([ 8.89108911, 101.56435644, 149.43564356]), array([ 8.08910891, 101.05940594, 149.07920792]), array([ 8.32673267, 101.57425743, 149.20792079]), array([ 7.85148515, 100.93069307, 148.62376238]), array([ 8.43564356, 100.61386139, 148.34653465]), array([ 7.99009901, 100.55445545, 148.13861386]), array([ 8.01980198, 100.20792079, 147.93069307]), array([ 8.63366337, 99.72277228, 146.8019802 ]), array([ 8.25742574, 98.2970297 , 145.32673267]), array([ 9.5049505 , 98.53465347, 144.51485149]), array([ 8.98019802, 96.21782178, 141.11881188]), array([ 10.01980198, 94.2970297 , 137.24752475]), array([ 13.14851485, 88.84158416, 125.86138614]), array([19.30693069, 62.61386139, 87.16831683]), array([24.57425743, 35.27722772, 42.64356436])]
我想要所有数字的总和,但我不明白......我在这里做错了什么?
您可以使用PIL
(Python Imaging Library) 加载图像,使用 numpy.asarray( numpy.asarray()
将其转换为数组,然后使用numpy.sum()
:
from PIL import Image
import numpy as np
image_path = '/Users/xxx/Desktop/test.png'
img = Image.open(image_path)
img.load()
data = np.asarray(img, dtype="int32")
data.sum()
Output :
1715779623
参考资料:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.