gpt4 book ai didi

c - 循环平铺以旋转矩阵

转载 作者:行者123 更新时间:2023-12-02 04:13:39 25 4
gpt4 key购买 nike

我正在尝试编写一个使用循环平铺技术旋转图像矩阵的函数。但是,我在使其正常工作方面遇到了一些问题。

编辑:
这是我更新的代码,但仅当n为块大小的倍数时才有效。我将如何处理变化的矩阵大小?现在,我仅使用正方形块,并且对于这些正方形块来说效果很好。我将如何根据给出的数组大小将其更改为使用矩形块。具体来说,如果给定一个n x n数组,如何选择矩形块尺寸将其分成几部分?

  //Block size to tune
int block = 20;
int i1, j1, k1, i, j, k;

for(i1 = 0; i1 < n; i1 += block) {
for(j1 = 0; j1< n; j1 += block) {
for(i = i1; i < i1 + block; i++){
for(j = j1; j < j1 + block; j++){
dest[getInd(j, i, n)] = src[getInd(i, n - 1 - j, n)];

}
}
}
}

}

最佳答案

前两个for循环看起来不正确:

  for(i1 = 0; i1 < n/block; i1 += block) {
for(j1 = 0; j1< n/block; j1 += block) {

应该可能是:
  for(i1 = 0; i1 < n; i1 += block) {
for(j1 = 0; j1 < n; j1 += block) {

纠正此问题后,您可能只需要逐步调试程序中的代码,以解决其他需要解决的问题。

关于c - 循环平铺以旋转矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3876605/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com