的我需要一个式(逻辑)来划分在“N”数量相等的部分的固定区域。例如,我有一张800 * 800的照片/图像,所以现在我需要将它分成10个相同的部分以及切片部分的尺寸。你能帮我吗?将画面划分成N个相等的部分
0
A
回答
2
既然你不指定,他们需要是正方形,或施加比“十个等份”以外的任何其他限制,你为什么不只是切片图像分割成(对于示例)十倍80 * 800的图像(或800 * 80,如果你想在其他维度切片)?
这将会给十个相等大小的块,而不必担心是否具有最佳广场等等。如果用例只是切分成相等的部分(例如从网络传来的图像,其中十个小的请求可能比一个大的请求响应更快),这可以正常工作。
换句话说,是这样的:
def getSlice (sliceNumber, sliceCount, image):
xpos = 0
xsize = image.xsize
ypos = sliceNumber * image.ysize/sliceCount
ypos2 = (sliceNumber + 1) * image.ysize/sliceCount
if sliceNumber < sliceCount - 1:
ysize = ypos2 - ypos1
else:
ysize = image.ysize - ypos1 - 1
return image.subImage (xpos, ypos, xsize, ysize)
时用五片调用它,你会得到:
+-------------------------------------------+
| getSlice (0, 5, image) |
+-------------------------------------------+
| getSlice (1, 5, image) |
+-------------------------------------------+
| getSlice (2, 5, image) |
+-------------------------------------------+
| getSlice (3, 5, image) |
+-------------------------------------------+
| getSlice (4, 5, image) |
+-------------------------------------------+
的ypos/ypos2
的东西,并在年底的if
声明是为了满足分部可能无法给出完全对齐的数字的情况。他们应该保证你不会复制或错过图像中的任何行。
0
首先,你应该找到了N的所有这样的对k的,L中K * L = N。 K - 行数,l - 列数。
其次,你应该选择这些对你想要的。
之后,你应该剪切图像。
什么步骤使得一个问题吗?
如果你想要的,例如,最方形部分,检查全1从开方(N)的一个开始下降。获得你找到的第一个分隔线。因此,您可以合并步骤1和2.
相关问题
- 1. 在C++中将间隔划分为n个相等部分
- 2. 将矩形分成n个相等的部分
- 3. 将圆划分成n等分来得到每个划分点的坐标
- 4. 如何将矢量分成N“几乎相等”的部分
- 5. 如何划分的间隔分成相等的部分
- 6. 表面细分成相等部分
- 7. 划分一个图像划分成相等的像素数据
- 8. 将树拆分成相等部分
- 9. 将文本拆分成相等部分
- 10. 将饼图分成相等部分jfreechart
- 11. 将视图拆分成相等部分
- 12. 划分成N块的划分阵列
- 13. 如何将一个NSArray分成两个相等的部分?
- 14. 将图像分成两个相等的部分python opencv
- 15. 如何将画布上划的线分成两部分
- 16. 划分为两个不相等的随机部分
- 17. 将QImage划分成更小的部分
- 18. 如何在nodejs中将数组划分为相等部分
- 19. 将一个数组列表划分为两个相等的部分
- 20. 如何划分UIView N个相等的UIView
- 21. css使用填充将div分成四个相等部分
- 22. 如何在html中划分3个相等部分li
- 23. 将网格中的第一行划分为四个相等部分WPF
- 24. 将页面划分为两部分
- 25. 将列表拆分为大约相等长度的N个部分
- 26. Python - 将列表随机分成几乎相等的部分
- 27. 将屏幕分成与溢出相等的部分
- 28. 如何将长度分成与提醒相等的部分?
- 29. 如何使用GNUplot将等边三角形分成三个相等部分
- 30. 将HashMap划分成相同的块