• xkISP可以使用中等容量的FPGA配合DPHY来跑吗

    1
    0 Votes
    1 Posts
    3k Views
    No one has replied
  • 如何用catapult运行这个isp的c model

    3
    0 Votes
    3 Posts
    6k Views
    H
    Hi,请问您最终运行成功了吗? 我有些运行上的问题想请教一下,请问是否方便?我是学生,只是作为学习知识使用,没有其他用途。
  • C-model源码

    2
    0 Votes
    2 Posts
    5k Views
    A
    @Bryan 你可以联系 bo@xksilicon.com
  • bash: ./isp: 权限不够

    1
    0 Votes
    1 Posts
    4k Views
    No one has replied
  • 请问会提供xkISP在FPGA上运行的demo吗?

    2
    0 Votes
    2 Posts
    6k Views
    B
    目前可以用U200/U250这种大容量FPGA运行的,带摄像头的FPGA目前还没找到合适的支持RAW数据输入的摄像头模块
  • Any code manual for lsc module?

    1
    0 Votes
    1 Posts
    4k Views
    No one has replied
  • 执行makefile时,运行到csim_design时,提示缺少stdio.h

    2
    0 Votes
    2 Posts
    5k Views
    K
    你好 1.stdio.h找不到的问题,可能是你的操作系统上一些c的标准库没有安装,导致gcc无法编译,这部分网上资料比较多,你可以去搜一搜如何安装 2.我们现在用的vitis版本是2021.2版本
  • xk-ISP code manuals

    8
    0 Votes
    8 Posts
    15k Views
    K
    Raw Denoise The RAWDNS module implements image denoising on the raw domain.The the NLMs(Non-local Means) algorithm based on block matching is used for denoising. Parameter typedef struct{ uint6 sigma; //range[0-63] uint1 eb; //{0,1} uint7 Filterpara; //range[0-127] uint12 invksigma2; //1/ksigma2 <<12 }rawdns_register; Param sigma and Filterpara jointly control the intensity of the filtering.Param invksigma2 is the quantized reciprocal of the product of sigma and Filterpara。 Input & Ouput typedef stream_u12 Stream_t;//input raw data typedef stream_u12 Stream_t;//output rgb data Resources The algorithm uses a 11x11 window to complete the denoising process, and the storage resources are listed as follows uint12 rawdns_lines[10][8192];//10x8192 sram uint12 rawdns_block[11][11];// 11x11 registers Algorithm Function rawdns_process describes the block matching based NLM algorithm, and the main calculation process is the following loop. for(k=1;k<=9;k+=2){ for(l=1;l<=9;l+=2){ if((k!=5) || (l!=5)) { eur_distance = Cal_Eur_Distance(rawdns_block,k,l); diff = rawdns_max(eur_distance, sigma2); weight = Cal_weight(diff,rawdns_reg ,ksigma2); if(weight > max_weight) { max_weight = weight; } total_weight += weight; total_value += weight * rawdns_block[k][l]; } } } The Cal_Eur_Distance function calculates the Euclidean distance between different blocks, and cal_weight calculates the Gaussian weights of different pixels.Finally, according to the calculation result, the pixel value after denoising(usually center pixel of the window) is output. if(total_weight == 0) return rawdns_block[5][5]; else return rawdns_clip(total_value/total_weight);
  • This topic is deleted!

    1
    0 Votes
    1 Posts
    1 Views
    No one has replied
  • xkISP@Github

    1
    0 Votes
    1 Posts
    5k Views
    No one has replied