<p>即使这不是用numpy完成的,但对某些人来说仍然是有用的。我这样循环得到了正确的顺序。我相信这在代码中可以做得更好,但现在看来这是可行的:</p>
<pre><code># Order rendered images (to 1, 2, 3, 4 from 3, 1, 2, 4)
rendered_images_ordered = []
for y in range(parts_count, 0, -1):
for x in range(parts_count):
rendered_images_ordered.append(rendered_images[(y-1)+(x*parts_count)])
</code></pre>
<p>前输出<strong>:</p>
<pre><code>['Fart_1_1.png', 'Fart_1_2.png', 'Fart_1_3.png', 'Fart_2_1.png', 'Fart_2_2.png', 'Fart_2_3.png', 'Fart_3_1.png', 'Fart_3_2.png', 'Fart_3_3.png']
</code></pre>
<p><a href="https://i.stack.imgur.com/lR4SA.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/lR4SA.jpg" alt="Before"/></a></p>
<p>在</strong>之后输出<strong>:</p>
<pre><code>['Fart_1_3.png', 'Fart_2_3.png', 'Fart_3_3.png', 'Fart_1_2.png', 'Fart_2_2.png', 'Fart_3_2.png', 'Fart_1_1.png', 'Fart_2_1.png', 'Fart_3_1.png']
</code></pre>
<p><a href="https://i.stack.imgur.com/jqfF4.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/jqfF4.jpg" alt="After"/></a></p>
<p>如果你对我在哪里使用这个感兴趣的话。我创建了这个名为<a href="https://github.com/Creatide/RenderFarts" rel="nofollow noreferrer">RenderFarts</a>的blender插件。在那里,我需要在<a href="https://github.com/Creatide/RenderFarts/blob/aa153e8641580b9110c6dc698bfc4a093e6bb108/src/__init__.py#L175" rel="nofollow noreferrer">image merge function</a>中进行排序,在那里我渲染部件,并需要将这些部件按正确的顺序排列。合并过程尚未工作,但这种排序似乎工作正常</p>