TI中文支持网
TI专业的中文技术问题搜集分享网站

image_processing处理第二张图片,结果页面总是显示第一张图片,求!

c6678  

CCS Version: 5.3.0.00090  

mcsdk_2_01_02_06  

bios_6_33_06_50

image processing这个demo里做算法移植,处理第一张图片时运行一切正常,当我return to main page,换一张图片处理时,结果页面里的表格中的信息确实是第二张图片的信息,并且我在mcip.webpage.c中生成页面前写了两个bmp文件的代码(如下),写完后我看.bmp也的确是第二张图片(原始图和处理后的图都没问题),但奇怪的是页面中的input image和output image却总是显示第一张图片!被折磨很久找不到原因

    {
         FILE *fp = fopen("in.bmp", "wb");
         fwrite(input_image.data, gRxBuffer_size, 1, fp);
         fclose(fp);
        }
    {
           FILE *fp = fopen("out.bmp", "wb");
           fwrite(output_image.data, gRxBuffer_size, 1, fp);
           fclose(fp);
          }

     efs_createfile("input_image.bmp", input_file_length, (UINT8 *) input_image.data);
     efs_createfile("output_image.bmp", output_file_length, (UINT8 *) output_image.data);

求啊!

ruijie yang:

不要沉啊。。。

有什么原因可能导致这种结果呢?有任何一点点想法或建议就请帮帮忙吧!

Andy Yin1:

您好,

请先在CCS下调试看看输入图像数据、处理的每一步结果数据是否都正确,最后看看输出到显示的buffer中存储的结果是否正确,如果在ccs下看到的输入输出数据都正确,显示有问题的话,查查是否cache的原因导致的,可以尝试将显示的数据buffer放到LL2或者在显示之前刷一下cache。

ruijie yang:

回复 Andy Yin1:

谢谢Andy!

我在处理过程中很多地方插了写文件的操作,写出来的bmp都是正确的输入输出图片,说明处理过程是对的。

在image processing demo里,各个从核将处理过的数据传回给主核之前有一个对处理数据cache_wb的操作,这不刷了cache了么?我又在最终页面输出结果前加了下面两句,不知就下面这样写对不对? 但跑出来页面的显示依旧是错的。

    Cache_wb(input_image.data, input_image.length, Cache_Type_ALL, FALSE);    Cache_wb(output_image.data, output_image.length, Cache_Type_ALL, FALSE);

我之前想会不会是浏览器的问题,就换了用IE,第一次用IE时结果居然对了,我还以为真是浏览器的问题,但是我又运行了几次,就又没对过了。。。。

Andy Yin1:

回复 ruijie yang:

您好,

如果确定输出显示的buffer中存储的数据是更新后的数据,那就有可能是IE输出显示的问题,这方面我不太清楚。建议屏蔽前面的处理,直接在输出显示buffer填充一副新的图像看看能不能显示,如果可以的话就说明还是前面的处理数据没有更新好,否则说明是显示这一段有问题。

ruijie yang:

回复 Ping Li3:

为什么要刷一下网页才行呢?  什么原因呢?

wj xz:

回复 ruijie yang:

请问您后面发现是什么原因了么

赞(0)
未经允许不得转载:TI中文支持网 » image_processing处理第二张图片,结果页面总是显示第一张图片,求!
分享到: 更多 (0)