zoukankan      html  css  js  c++  java
  • 【20160924】GOCVHelper 图像增强部分(5)

    // Multiply 正片叠底
    void Multiply(Matsrc1Matsrc2Matdst)
    {
        for(int index_row=0; index_row<src1.rowsindex_row++)
        {
            for(int index_col=0; index_col<src1.colsindex_col++)
            {
                for(int index_c=0; index_c<3; index_c++)
                    dst.at<Vec3f>(index_rowindex_col)[index_c]=
                    src1.at<Vec3f>(index_rowindex_col)[index_c]*
                    src2.at<Vec3f>(index_rowindex_col)[index_c];
            }
        }
    }
    // Color_Burn 颜色加深
    void Color_Burn(Matsrc1Matsrc2Matdst)
    {
        for(int index_row=0; index_row<src1.rowsindex_row++)
        {
            for(int index_col=0; index_col<src1.colsindex_col++)
            {
                for(int index_c=0; index_c<3; index_c++)
                    dst.at<Vec3f>(index_rowindex_col)[index_c]=1-
                    (1-src1.at<Vec3f>(index_rowindex_col)[index_c])/
                    src2.at<Vec3f>(index_rowindex_col)[index_c];
            }
        }
    }
    // 线性增强
    void Linear_Burn(Matsrc1Matsrc2Matdst)
    {
        for(int index_row=0; index_row<src1.rowsindex_row++)
        {
            for(int index_col=0; index_col<src1.colsindex_col++)
            {
                for(int index_c=0; index_c<3; index_c++)
                    dst.at<Vec3f>(index_rowindex_col)[index_c]=max(
                    src1.at<Vec3f>(index_rowindex_col)[index_c]+
                    src2.at<Vec3f>(index_rowindex_col)[index_c]-1, (float)0.0);
            }
        }

    }

    模拟ps中的图像叠加操作,实现同样的效果





  • 相关阅读:
    Javascript 基础知识整理
    设计模式
    Flex 布局
    CSS选择器,属性前缀,长度单位,变形效果,过渡效果,动画效果
    CSS中一些重要概念
    性能优化(CSS优化)
    CSS定位走一波(定位学习续)
    定位布局
    浮动布局
    Display属性学习总结
  • 原文地址:https://www.cnblogs.com/jsxyhelu/p/5907547.html
Copyright © 2011-2022 走看看