Group Details Private

Global Moderators

Forum wide moderators

 

Member List

  • xkISP - Open Source ISP IP Core

    Introduction

    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

    xkISP
    ├─fpga
    │      host.cpp
    │      top.cpp
    │      top.h
    │      xcl2.cpp
    │      xcl2.h
    │     
    ├─src
    │    isp_top.h
    │    file_define.h
    │    "*module*".cpp
    │    "*module*".h
    │    ...
    │   
    ├─tb
    │     tb_"*module*".cpp
    │    ...
    │   
    ├─tcl
    │      Makefile
    │      "*module*".tcl
    │      "*module*"_directives.tcl
    │    ...
    │   
    ├─tv
    │     Makefile
    │     hls_param.txt
    │     input.raw
    │     isp
    │     readme_for_tv
    ├─  LICENSE
    ├─  setup_env.sh
    └─  README.md
    
    • 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. setup_env.sh is used to designate the development tools. (Vitis HLS or Vivado)

    Download

    Clone this repo in Github:

    git clone https://github.com/openasic-org/xkISP.git
    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

    Descripton

    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
    XX
    XX
    ....
    @1
    XX
    XX
    XX
    ....

    output bitstream

    /test/bs.264

    run

    /test/bs2h264.exe

    download

    0_1629349087470_bs2h264_v1.0.zip

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

    0_1587284830660_code.zip

    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 (用于读入训练集和测试集,只用于预测可不需要)

    参数配置说明:

    运行代码时,在main函数中配置字典config以控制整个流程,各参数具体说明如下:

    mode: 字符串类型,包含'train'(训练),'test'(测试),'inference'(预测)三种
    ckpt_dir:字符串类型,网络的check point存储路径
    train_path:字符串类型,训练集路径(仅支持.h5文件)
    test_path:字符串类型,测试集路径(仅支持.h5文件)
    inference_i:字符串类型,存放预测输入图像的文件夹的路径
    inference_o:字符串类型,存放预测输出图像的文件夹的路径
    param:模型参数,包含两个变量的list,第一个变量表示residual blocks的数量,第二个变量表示每个residual block中有多少个卷积层,训练完成后不可改变
    qd_param:四叉树参数,包含两个变量的list,第一个变量表示四叉树最大分解层数,第二个变量表示分解的阈值
    batch_size:整型,批次大小(这里指直方图的批次大小)
    epoch:整型,训练的轮数
    alpha: 浮点型,二阶正则化约束之前的系数,防止过拟合
    learning_rate:浮点型,学习率

    posted in 代码发布 | OpenASIC Code Release