的我需要一個式(邏輯)來劃分在「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劃分成相同的塊