小编you*_*hao的帖子

PIL图像模式我是灰度吗?

我试图以整数格式而不是(R,G,B)格式指定图像的颜色.我认为我必须在模式"I"中创建一个图像,因为根据文档:

图像的模式定义图像中像素的类型和深度.当前版本支持以下标准模式:

  • 1(1位像素,黑白,每字节存储一个像素)
  • L(8位像素,黑白)
  • P(8位像素,使用调色板映射到任何其他模式)
  • RGB(3x8位像素,真彩色)
  • RGBA(4x8位像素,带透明蒙版的真彩色)
  • CMYK(4x8位像素,分色)
  • YCbCr(3x8位像素,彩色视频格式)
  • 我(32位有符号整数像素)
  • F(32位浮点像素)

然而,这似乎是一个灰度图像.这是预期的吗?有没有办法根据32位整数指定彩色图像?在我的MWE中,我甚至让PIL决定如何将"红色"转换为"I"格式.


MWE

from PIL import Image

ImgRGB=Image.new('RGB', (200,200),"red") # create a new blank image
ImgI=Image.new('I', (200,200),"red") # create a new blank image
ImgRGB.show()
ImgI.show()
Run Code Online (Sandbox Code Playgroud)

python python-imaging-library

12
推荐指数
1
解决办法
3万
查看次数

在Clang中regex_constants的实现错误?

按照标准规定

match_prev_avail:--first是有效的迭代器位置。设置后,将忽略match_not_bol和match_not_bow

但是我运行以下代码并得到:

#include <regex>
#include <iostream>
using namespace std;

int main()
{
    regex re0("^bcd");
    string str = "abcd";
    std::string::iterator start = str.begin() + 1;
    cout << regex_search(start, str.end(), re0, regex_constants::match_not_bol) << endl;
    cout << regex_search(start, str.end(), re0, regex_constants::match_prev_avail) << endl;
    cout << regex_search(start, str.end(), re0, regex_constants::match_prev_avail | regex_constants::match_not_bol) << endl;
}
Run Code Online (Sandbox Code Playgroud)

输出:

0
1
0
Run Code Online (Sandbox Code Playgroud)

似乎已match_prev_avail被覆盖match_not_bol

c++ c++-standard-library c++11 clang++

8
推荐指数
1
解决办法
250
查看次数

pdb有像gdb一样的布局src吗?

在 中gdb,我们可以使用它layout src来获得一个非常好的调试文本 UI。pdb(Python 调试器)有等效的东西吗?在 中pdb,我只能看到将要执行的下一行,这很烦人。

gdb text ui如下图所示:

gdb 文本-ui

python debugging gdb gdb-python pdb

7
推荐指数
1
解决办法
3584
查看次数

conda 相当于 pip install

如果我有一个带有setup.py, in的目录pip,我可以pip install .在该目录中安装包。

如果我正在使用conda怎么办?

conda install .使conda找到一个名为 dot 的包。

python pip conda miniconda

7
推荐指数
1
解决办法
5639
查看次数

如何将numpy ndarray转换到位?

我正在使用numpy.

我有一个形状为[T,H,W,C]的ndarray,我想把它转换为:[T,C,H,W].但是,这个阵列非常庞大,我想要节省内存.

但我发现np.transpose这样做并非就地.

为什么这样的操作np.transpose没有就地对应?

我以前认为任何命名的操作np.Bar都会以其原位对应命名np.Bar_,但却发现这不是事实.

python numpy

4
推荐指数
1
解决办法
858
查看次数

GIT:git如何知道文本文件的变化?

例如,通过git diff file,我们可以知道我们删除了3行,插入了1行,修改了3行。但 git 如何实现呢?它会跟踪我的编辑过程吗?vim 是否会留下一些特殊的文件供 git 来实现?

我的意思是,如果我修改了一行,我也可以说我删除了一行并插入了一行。git 如何知道我修改了这一行而不是进行删除和插入?

git version-control

1
推荐指数
1
解决办法
448
查看次数