菜鸟教程小白 发表于 2022-12-12 22:57:48

objective-c - 在图像的特定区域进行平滑处理


                                            <p><div>
            <aside class="s-notice s-notice__info post-notice js-post-notice mb16"role="status">
      <div class="d-flex fd-column fw-nowrap">
            <div class="d-flex fw-nowrap">
                <div class="flex--item wmn0 fl1 lh-lg">
                  <div class="flex--item fl1 lh-lg">
                        <b>这个问题在这里已经有了答案</b>:
                        
                  <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>您可以从原始矩阵中获取子矩阵,例如:</p>

<pre><code>cv::Mat subMat = originalMatrix(cv::Rect(x, y, width, height));
</code></pre>

<p>其中 x,y, width, height 是子图像的位置。
然后对子矩阵执行高斯模糊。</p>

<p>[编辑]
如果您想模糊复杂的形状,一种方法是模糊整个图像,然后使用 mat.copyTo 和模糊部分的蒙版:</p>

<pre><code>cv::Mat mask = ?; // this should be a CV_8U image with 0 pixels everywhere but where you want to blur the original image
cv::Mat blurred;
cv::gaussianBlur(image, blurred, cv::Size(5,5),1.5);
cv::Mat output = image.clone();
blurred.copyTo(output, mask);
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于objective-c - 在图像的特定区域进行平滑处理,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/12781874/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/12781874/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: objective-c - 在图像的特定区域进行平滑处理