Group Details Private

Global Moderators

Forum wide moderators


Member List

  • xkISP - Open Source ISP IP Core


    xkISP is an open source image signal processor (ISP) based on Xilinx HLS development tools. xkISP is jointly developed by VIP Lab of Fudan university and DAMO CTL lab of Alibaba. Up to now, xkISP supports to process 12-bit raw image data of any resolution. The entire pipeline includes 17 function modules shown in the following:

    alt text

    File Structure

    │      host.cpp
    │      top.cpp
    │      top.h
    │      xcl2.cpp
    │      xcl2.h
    │    isp_top.h
    │    file_define.h
    │    "*module*".cpp
    │    "*module*".h
    │    ...
    │     tb_"*module*".cpp
    │    ...
    │      Makefile
    │      "*module*".tcl
    │      "*module*"_directives.tcl
    │    ...
    │     Makefile
    │     hls_param.txt
    │     input.raw
    │     isp
    │     readme_for_tv
    ├─  LICENSE
    • fpga contains code files for top level integration verification.
    • src contains source code files which are the single module of the xkISP project and head files(file_define.h) for single module test.
    • tb contains code files for verificating the function consistency with Cmodel(tv/isp) in the module level.
    • tcl contains the scripts for execuating the code files in the tb("module".tcl) and adding the pragma command for the code files in the src ("module"_directives.tcl). Makefile in the tcl is used for module level verification.
    • tv contains the files for generating the test vectors. You can read the readme_for_tv for more details. is used to designate the development tools. (Vitis HLS or Vivado)


    Clone this repo in Github:

    git clone
    cd xkISP
    posted in 代码发布 | OpenASIC Code Release
  • RE: 请问是否有开发H.265解码器的计划


    posted in 交流讨论 | General Discussion
  • xkISP@Github posted in xkISP
  • RE: 对于想参加项目开发的同学

    @vvrobinham 好的 我稍后加你

    posted in 交流讨论 | General Discussion
  • RE: 对于想参加项目开发的同学

    @fly1198721171 你好!根据我们前期开发下来的经验,我们目前暂时不接受外部开发者,主要考虑到硬件开发过程中的流程比较复杂,外部开发者难以持续时间投入

    posted in 交流讨论 | General Discussion
  • H264 ENCODER RTL V2.0仿真及FPGA教程_v2 posted in 新闻文档 | News & Documents
  • Bs2H264 SW Code


    A tiny software to translate bit-stream from RTL (ASCII text) to h264 bit-stream (binary)

    input ASCII text format

    /test/bs_416x240_g5_f10_q27.dat (exmaple)
    @0 -- frame number 0, added manually
    XX -- bit stream byte generated by RTL testbench

    output bitstream





    posted in 代码发布 | OpenASIC Code Release
  • RE: H265 2.0的RDO流程 posted in 交流讨论 | General Discussion
  • IP SoC China 2020 演讲Video posted in 新闻文档 | News & Documents
  • 基于直方图匹配的单幅图像去雾算法测试代码

    Dependencies: (The specific version is the version in my environment, and does not need to be exactly the same when being used)

    1. tensorflow-gpu 1.12.0 (building the model)
    2. numpy 1.16.2 (for matrix operations such as quadtree decomposition, guided filter, etc.)
    3. matplotlib 3.0.3 (Image reading and writing)
    4. h5py 2.8.0 (used to read training set and testing set, not nexessary when performing inference)

    Parameter configuration instructions:

    When running the code, configure the config(a python dictionary) in the main function to control the entire process. The parameters are described as follows:

    mode: string, including 'train' , 'test' , 'inference'
    ckpt_dir: string type, the storage path of the check point of the network
    train_path: string type, training set path (only .h5 files are supported)
    test_path: string type, ,testing set path (only .h5 files are supported)
    inference_i: string type, the path of the folder where input hazy images are stored
    inference_o: string type, the path of the folder which output clear images are written to
    param: parameters for building the model, a list containing two variables, the first variable indicates the number of residual blocks, the second variable indicates how many convolutional layers are in each residual block, and cannot be changed after training
    qd_param: quadtree parameter, a list containing two variables, the first variable represents the maximum decomposition level of the quadtree, and the second variable represents the decomposition threshold
    batch_size: integer, batch size (here refers to the batch size of the histogram)
    epoch: integer, how many epoches needed in training process
    alpha: float type, coefficients of l2 regularization constraints, to prevent overfitting
    learning_rate: float type, learning rate


    1. tensorflow-gpu 1.12.0 (用于模型搭建)
    2. numpy 1.16.2 (用于四叉树分解、导向滤波器等矩阵运算)
    3. matplotlib 3.0.3 (图像读写)
    4. h5py 2.8.0 (用于读入训练集和测试集,只用于预测可不需要)



    mode: 字符串类型,包含'train'(训练),'test'(测试),'inference'(预测)三种
    ckpt_dir:字符串类型,网络的check point存储路径
    param:模型参数,包含两个变量的list,第一个变量表示residual blocks的数量,第二个变量表示每个residual block中有多少个卷积层,训练完成后不可改变
    alpha: 浮点型,二阶正则化约束之前的系数,防止过拟合

    posted in 代码发布 | OpenASIC Code Release