这是我的流程图:
graph TB
aaa ---> bbb ---> ddd & ccc
ddd -.-> fff
ccc --->|eee| fff
fff ---> hhh & ggg & kkk
hhh --->|iii| mmm
ggg & kkk -.-> mmm
Run Code Online (Sandbox Code Playgroud)
但实际上我希望节点ccc和节点ddd水平对齐。并且hhh, 节点ggg和kkk水平对齐。是否可以?
当然,这篇文章的目的是考虑如何水平对齐这些节点,但如果可能的话我也希望使这些边缘尽可能短,以在对齐它们时节省空间。比如我希望节点ddd上去,而不是节点ccc下来
如果我有像这样的面具

我有一个图像(大小与面具相同)就像

我想突出显示图像中的蒙版。如果我使用其他语言,我只是

如您所见,结果图像有一个透明的红色显示蒙版。我希望在 OpenCV 中实现这一点。所以我写了这段代码
#include <opencv.hpp>
using namespace cv;
using namespace std;
int main() {
Mat srcImg = imread("image.jpg");
Mat mask = imread("mask.jpg", IMREAD_GRAYSCALE)>200;
for(int i=0;i<srcImg.rows;i++)
for(int j=0;j<srcImg.cols;j++)
if(mask.at<uchar>(i, j)==255)
circle(srcImg, Point(j,i), 3, Scalar(0, 0, 128,128));
imshow("image",srcImg);
waitKey();
return 0;
}
Run Code Online (Sandbox Code Playgroud)
但是如您所见,我在 中使用了 alpha 值Scalar,但它不是透明的 red。

也许这是因为srcImg只有 3 个频道。我有两个关于这个的问题
circle逐像素绘制才能完成此操作?这是我非常喜欢使用的流程图模式,我目前使用drawio来绘制它:
注意流程图中有两种描述
我知道美人鱼可以通过以下方式实现description1:
graph TB
A --->|"description1:<br>How does A get to B"| B
Run Code Online (Sandbox Code Playgroud)
但description2对我来说也很重要,有什么办法可以实现吗?
我使用子图的标题而不是description2:
graph TB
A --->|"description1:<br>How does A get to B"| B
subgraph description2:<br>Some properties of B
B
end
Run Code Online (Sandbox Code Playgroud)
但我不得不说这是一个非常丑陋的临时解决方案。所以我在这里问..