小编con*_*449的帖子

InvalidArgumentError: 发现 2 个根错误。Tensorflow 文本分类模型中不兼容的形状

我正在尝试从以下存储库中获取代码,该存储库基于本文。它有很多错误,但我主要让它工作。但是,我一直遇到同样的问题,我真的不明白如何解决这个问题/甚至出了什么问题。

第二次验证是否满足语句标准时发生错误。第一次总是有效,然后在第二次中断。如果有帮助,我将包括它在中断之前打印的输出。请参阅下面的错误:

step = 1, train_loss = 1204.7784423828125, train_accuracy = 0.13725490868091583
counter = 1, dev_loss = 1188.6639287274584, dev_accuacy = 0.2814199453625912
step = 2, train_loss = 1000.983154296875, train_accuracy = 0.26249998807907104
---------------------------------------------------------------------------
InvalidArgumentError                      Traceback (most recent call last)
/usr/local/lib/python3.6/dist-packages/tensorflow_core/python/client/session.py in _do_call(self, fn, *args)
   1364     try:
-> 1365       return fn(*args)
   1366     except errors.OpError as e:

7 frames
InvalidArgumentError: 2 root error(s) found.
  (0) Invalid argument: Incompatible shapes: [2,185] vs. [2,229]
	 [[{{node loss/cond/add_1}}]]
	 [[viterbi_decode/cond/rnn_1/while/Switch_3/_541]]
  (1) Invalid argument: Incompatible shapes: [2,185] …
Run Code Online (Sandbox Code Playgroud)

python nlp text-classification deep-learning tensorflow

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

用python给视频添加字幕

我有一段人们说话的视频。我还有一份成绩单。我将单词分成句子,这样我就可以在屏幕上一次显示一个句子,就像电影中的普通字幕一样。为此,我创建了一个 csv,其中每个帧都有一行,并且每行都包含该句子时间块内的完整句子。这样,我循环遍历所有帧,并将该句子的文本放在该句子内的每个帧上。我是在 OpenCV 中做的。

\n

样本成绩单 csv:

\n
frame     sentence\n0           hello\n1           hello\n2           how are you\n3           how are you\n4           how are you\n5           how are you\n6           how are you\n7           how are you \n8           fine\n...\n
Run Code Online (Sandbox Code Playgroud)\n

csv 的长度与视频中的帧数相同。要绘制字幕,我这样做:

\n
import cv2\nimport pandas as pd\n\ndf = pd.read_csv('data.csv')\nvideo = cv2.VideoCapture('vid.mp4')\nnum_frames = video.get(cv2.CAP_PROP_FRAME_COUNT)\n\nassert len(df) == num_frames\n\nfor i in list(range(0, num_frames)):\n    ret, frame = video.read()\n    cv2.putText(frame, str(df.sentence), (0,50),cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 0, 0), 3, cv2.LINE_AA, True)\n\n    # additional standard cv2 code below...\n
Run Code Online (Sandbox Code Playgroud)\n

这可行,但现在我没有任何音频。我知道 OpenCV 不适用于任何音频,但是还有其他解决方法吗?这种方法在我的管道中效果很好,因此我希望能够将这些帧写入新视频,但保留音频,同时使用尽可能少的附加库。

\n

编辑 …

python video opencv video-processing

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

Julia DataFrames 中是否有 diff() 函数,比如 Pandas?

我在 Julia 中有一个 DataFrame,我想创建一个新列来表示特定列中连续行之间的差异。在 python 熊猫中,我会简单地使用df.series.diff(). 有 Julia 等效项吗?

例如:

data
1
2
4
6
7

# in pandas

df['diff_data'] = df.data.diff()

data   diff_data
1        NaN 
2          1
4          2
6          2
7          1
Run Code Online (Sandbox Code Playgroud)

dataframe julia

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

如何在单独的数据帧之间合并和分组

我有两个要合并/分组的数据框。它们如下:

df_1


        words      start   stop
0            Oh,    6.72   7.21
1          okay,    7.26   8.01
2             go  12.82   12.90
3         ahead.   12.91  12.94
4             NaN  15.29  15.62
5             NaN  15.63  15.99
6             NaN  16.09  16.36
7             NaN  16.37  16.96
8             NaN  17.88  18.36
9             NaN  18.37  19.36
Run Code Online (Sandbox Code Playgroud)

df_2

data     start        stop
10         1.0        3.5
14         4.0       8.5
11         9.0       13.5
12        14.0       20.5
Run Code Online (Sandbox Code Playgroud)

我想将 df_1.words 合并到 df_2,但将 df_1.words 中的所有值分组,其中 df_1.start 位于 df_2.start 和 df_2.stop 之间。它应该是这样的:

df_2

data     start        stop   words
10         1.0 …
Run Code Online (Sandbox Code Playgroud)

python pandas

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

如何从html中的输入字段播放视频

我想创建一个页面,允许用户从本地计算机选择视频文件,然后在 html 上播放该视频。我已经弄清楚了每个单独的部分,但如何让它们进行交互。

为了获取用户输入,我有这个:

<label for="input">Choose a video file to process:</label>

<input type="file"
       id="input" name="input_video"
       accept="video/mp4, video/mov">
Run Code Online (Sandbox Code Playgroud)

要播放视频,我有这个:

<video width="320" height="240" controls>
  <source src="" type="video/mp4">
</video>
Run Code Online (Sandbox Code Playgroud)

如何获取从用户输入文件路径收集的任何值作为变量以供第二段代码播放?

谢谢。

编辑

我的代码现在看起来像这样,但视频文件播放器不会播放我选择的文件。

<label for="input">Choose a video file to process:</label>


<script>document.getElementById("input").addEventListener("change", function() {
  var media = URL.createObjectURL(this.files[0]);
  var video = document.getElementById("video");
  video.src = media;
  video.style.display = "block";
  video.play();
});
</script>

<label for="input">Choose a video file to process:</label>
<input type="file" id="input" name="input_video" accept="video/mp4, video/mov">
<video id="video" width="320" height="240" controls style="display"></video>

Run Code Online (Sandbox Code Playgroud)

html variables video

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

ffmpeg 将 mov 转换为 mp4 而不降低比特率

我正在尝试将 mov 视频转换为 mp4,但我不希望发生任何压缩。我在 Mac 上用 Quicktime 录制了它,并以最高的未压缩质量录制。当我跑步时ffmpeg -i。我得到:

    Stream #0:0(und): Video: prores (apcn / 0x6E637061), yuv422p10le(bt709), 1280x720, 72073 kb/s, 30.09 fps, 30 tbr, 30k tbn, 30k tbc (default)

Run Code Online (Sandbox Code Playgroud)

请注意,kb/s 为 72,073。我想保留这个比特率。

我尝试了一些不同的转换命令,包括:

ffmpeg -i input.mov output.mp4
Run Code Online (Sandbox Code Playgroud)

和:

ffmpeg -i input.mov -qscale 0 output.mp4

Run Code Online (Sandbox Code Playgroud)

两者都有效,但都会导致比特率损失。查看有关两者结果的信息

    Stream #0:0(und): Video: h264 (High 4:2:2) (avc1 / 0x31637661), yuv422p, 1280x720, 4569 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)
Run Code Online (Sandbox Code Playgroud)

如何转换为 mp4 并且仍然具有 ~72,000 kb/s?这可能吗?

compression video ffmpeg codec

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

Docker 输入文件并保存在输出中

我构建了一个 docker 映像,它输入本地文件,对其执行一些操作,然后返回本地保存的输出文件,但它不起作用。如何允许本地用户输入文件,然后将输出保存在本地计算机上?

我的 Dockerfile 如下所示:

FROM python:3
WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY . /app
EXPOSE 5000
CMD [ "python", "process.py" ]
Run Code Online (Sandbox Code Playgroud)

理想情况下,终端命令应该是这样的:

docker run -p 5000:5000 [name of docker] [local path to input file] [local path to save output file]
Run Code Online (Sandbox Code Playgroud)

当我运行时,我收到此错误:

docker: Error response from daemon: OCI runtime create failed: container_linux.go:349: starting container process caused "exec: \"../test.flac\": stat ../test.flac: no such file or directory": unknown.
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

python docker dockerfile

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

如何根据数据框中的条件将行与前一行合并

我有一个数据框,其中每一行都是一个单词或标点符号。我想遍历数据框,每当一行包含标点符号时,我想将它与前一行结合起来。

例如,我想转换:

   word 
0  hello      
1  ,
2  how
3  are
4  you
5  ?  
Run Code Online (Sandbox Code Playgroud)

进入:

   word 
0  hello,      
2  how
3  are
4  you?
Run Code Online (Sandbox Code Playgroud)

谢谢。

python pandas

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

如何通过标点符号拆分熊猫列中的长字符串

我有一个 df 看起来像这样:

words                                              col_a   col_b  
I guess, because I have thought over that. Um,       1       0 
That? yeah.                                          1       1
I don't always think you're up to something.         0       1                                                       
Run Code Online (Sandbox Code Playgroud)

我想将 df.words 存在标点符号的地方拆分(.,?!:;)为单独的行。但是,我想为每个新行保留原始行中的 col_b 和 col_b 值。例如,上面的 df 应该是这样的:

words                                              col_a   col_b  
I guess,                                             1       0
because I have thought over that.                    1       0
Um,                                                  1       0 
That?                                                1       1
yeah.                                                1       1
I don't always think you're up to something.         0       1
Run Code Online (Sandbox Code Playgroud)

python nlp pandas

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

如何在 Pandas 中按时间序列分组并聚合开始/停止时间

我有一个 df 看起来像这样:

       data  start  stop
    10    1.0   1.5
    10    2.0   2.5
    10    3.0   3.5
    10    4.0   4.5
    10    5.0   5.5
    10    6.0   6.5
    10    7.0   7.5
    10    8.0   8.5
    14    9.0   9.5
    14   10.0  10.5
    10   11.0  11.5
    10   12.0  12.5
    10   13.0  13.5
    10   14.0  14.5
    14   15.0  15.5
    10   16.0  16.5
    10   17.0  17.5
    11   18.0  18.5
    11   19.0  19.5
    11   20.0  20.5
Run Code Online (Sandbox Code Playgroud)

我想通过 df.data 对 df 进行分组,并在列中聚合该组的 df.start 和 df.stop 时间。它应该是这样的:

    data  start  stop
    10    1.0 …
Run Code Online (Sandbox Code Playgroud)

python pandas

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

如何根据熊猫中的行值创建新列

我有一个看起来像这样的数据框:

    time  speaker  label_1  label_2
0   0.25        1       10        4
1   0.25        2       10        5
2   0.50        1       10        6
3   0.50        2       10        7
4   0.75        1       10        8
5   0.75        2       10        9
6   1.00        1       10       11
7   1.00        2       10       12
8   1.25        1       11       13
9   1.25        2       11       14
10  1.50        1       11       15
11  1.50        2       11       16
12  1.75        1       11       17
13  1.75        2       11       18
14  2.00        1       11       19 …
Run Code Online (Sandbox Code Playgroud)

python pandas

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