Darkflow: AssertionError: 44948596λ°”μ΄νŠΈλ₯Ό μ˜ˆμƒν•˜κ³  44948600을 μ°Ύμ•˜μŠ΅λ‹ˆλ‹€.

에 λ§Œλ“  2018λ…„ 06μ›” 10일  Β·  20μ½”λ©˜νŠΈ  Β·  좜처: thtrieu/darkflow

κ·Έλž˜μ„œ cmd c:\dark\darkflow-master>python flow --model cfg/yolov2-tiny.cfg --load bin/yolov2-tiny.weightsμ—μ„œ 이 λͺ…령을 μ‚¬μš©ν•  λ•Œ
그런 λ‹€μŒμ΄ 였λ₯˜κ°€ λ‚˜νƒ€λ‚©λ‹ˆλ‹€.
2018-06-10 1
이 문제λ₯Ό ν•΄κ²°ν•˜λ„λ‘ λ„μ™€μ£Όμ„Έμš”.

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

였, μ˜ˆμˆ˜λ‹˜!
λ‚΄κ°€ μ—¬κΈ°μ—μ„œ 무엇을 λ°œκ²¬ν–ˆλŠ”μ§€ 보러 μ˜€μ„Έμš”!
https://sites.google.com/view/tensorflow-example-java-api/complete-guide-to-train-yolo/convert-darknet-weights-to-pb-file

λͺ¨λ“  20 λŒ“κΈ€

μ•ˆλ…•ν•˜μ„Έμš”, 저도이 λ¬Έμ œκ°€ μžˆμŠ΅λ‹ˆλ‹€.
같은 yolov2-μž‘μ€.
AssertionError: 63820056λ°”μ΄νŠΈλ₯Ό μ˜ˆμƒν•˜κ³  63820060을 μ°Ύμ•˜μŠ΅λ‹ˆλ‹€.
아무도 우리λ₯Ό λ„μšΈ 수 μžˆμŠ΅λ‹ˆκΉŒ?

였, μ˜ˆμˆ˜λ‹˜!
λ‚΄κ°€ μ—¬κΈ°μ—μ„œ 무엇을 λ°œκ²¬ν–ˆλŠ”μ§€ 보러 μ˜€μ„Έμš”!
https://sites.google.com/view/tensorflow-example-java-api/complete-guide-to-train-yolo/convert-darknet-weights-to-pb-file

κ·Έ 링크λ₯Ό μ£Όμ…”μ„œ κ°μ‚¬ν•©λ‹ˆλ‹€
그리고 btw 당신은 이 darkflow λ¬Όκ±΄μ—μ„œ μš°λ¦¬κ°€ μ„œλ‘œλ₯Ό λ„μšΈ 수 μžˆλ„λ‘ μ €μ—κ²Œ μ—°λ½ν•˜μ‹œκ² μŠ΅λ‹ˆκΉŒ?

λ‚˜λŠ” small-yoloκ°€ μ•„λ‹ˆλΌ yolo와 같은 였λ₯˜λ₯Ό κ²ͺμ—ˆμŠ΅λ‹ˆλ‹€.
cfg νŒŒμΌμ—μ„œ λ„ˆλΉ„μ™€ 높이λ₯Ό μ€„μ΄μ‹­μ‹œμ˜€. λ¬Έμ œκ°€ ν•΄κ²°λ˜μ—ˆμŠ΅λ‹ˆλ‹€.
λ„ˆλΉ„μ™€ 높이 값은 32의 λ°°μˆ˜μ—¬μ•Ό ν•©λ‹ˆλ‹€.

λ‚˜λŠ” 같은 λ¬Έμ œκ°€μžˆλ‹€. yolov2.cfgλ₯Ό 3개의 클래슀둜 μˆ˜μ •ν•˜κ³  yolov2.weightsλ₯Ό μ‚¬μš©ν•˜μ—¬ λ‚΄ 데이터 μ„ΈνŠΈλ₯Ό ν›ˆλ ¨ν–ˆμŠ΅λ‹ˆλ‹€.
이 문제λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•΄ https://sites.google.com/view/tensorflow-example-java-api/complete-guide-to-train-yolo/convert-darknet-weights-to-pb-file 방법을 μ‹œλ„ν–ˆμŠ΅λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ μž‘λ™ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. μ˜€ν”„μ…‹ = 16을 μ˜€ν”„μ…‹ = 20, 심지어 μ˜€ν”„μ…‹ = 40으둜 λ°”κΏ¨μŠ΅λ‹ˆλ‹€.

zihang@derek :~/project/darkflow$ 흐름 --model cfg/yolov2-3c.cfg --load bin/yolov2.weights --train --annotation κΈ°μ°¨/주석 --dataset κΈ°μ°¨/이미지 --gpu 1.0

/home/zihang/anaconda3/envs/tensorflow/lib/python3.6/site-packages/darkflow/dark/darknet.py:54: UserWarning: ./cfg/yolov2.cfgλ₯Ό 찾을 수 μ—†μŠ΅λ‹ˆλ‹€. cfg/yolov2-3cλ₯Ό μ‚¬μš©ν•˜μ„Έμš”. λŒ€μ‹  cfg
cfg_path, FLAGS.model))
cfg/yolov2-3c.cfg ꡬ문 뢄석
bin/yolov2.weights λ‘œλ“œ 쀑...
역좔적(κ°€μž₯ 졜근 호좜 λ§ˆμ§€λ§‰):
파일 "/home/zihang/anaconda3/envs/tensorflow/bin/flow", 6ν–‰, in
cliHandler(sys.argv)
파일 "/home/zihang/anaconda3/envs/tensorflow/lib/python3.6/site-packages/darkflow/cli.py", 26ν–‰, cliHandler
tfnet = TFNet(FLAGS)
파일 "/home/zihang/anaconda3/envs/tensorflow/lib/python3.6/site-packages/darkflow/net/build.py", 58ν–‰, __init__
닀크넷 = 닀크넷(FLAGS)
파일 "/home/zihang/anaconda3/envs/tensorflow/lib/python3.6/site-packages/darkflow/dark/darknet.py", 27ν–‰, __init__
self.load_weights()
load_weights의 파일 "/home/zihang/anaconda3/envs/tensorflow/lib/python3.6/site-packages/darkflow/dark/darknet.py", 82ν–‰
wgts_loader = loader.create_loader( 인수)파일 "/home/zihang/anaconda3/envs/tensorflow/lib/python3.6/site-packages/darkflow/utils/loader.py", 105ν–‰, create_loaderload_type(경둜, cfg) λ°˜ν™˜νŒŒμΌ "/home/zihang/anaconda3/envs/tensorflow/lib/python3.6/site-packages/darkflow/utils/loader.py", 19ν–‰, __init__self.load( 인수)
파일 "/home/zihang/anaconda3/envs/tensorflow/lib/python3.6/site-packages/darkflow/utils/loader.py", 77ν–‰, λ‘œλ“œ 쀑
Walker.offset, Walker.size)
AssertionError: 202355760λ°”μ΄νŠΈ μ˜ˆμƒ, 203934260 발견

저도 같은 μ—λŸ¬μž…λ‹ˆλ‹€.... 해결이 μ•ˆλ˜λ„€μš”..... λˆ„κ°€ λ„μ™€μ£Όμ„Έμš”

였, μ˜ˆμˆ˜λ‹˜!
λ‚΄κ°€ μ—¬κΈ°μ—μ„œ 무엇을 λ°œκ²¬ν–ˆλŠ”μ§€ 보러 μ˜€μ„Έμš”!
https://sites.google.com/view/tensorflow-example-java-api/complete-guide-to-train-yolo/convert-darknet-weights-to-pb-file

이유λ₯Ό μ΄ν•΄ν•˜μ§€ λͺ»ν•˜μ§€λ§Œ μž‘λ™ν•©λ‹ˆλ‹€!!! 감사 ν•΄μš”!!

@dudqls1994
1. μš°μ„ , μš°λΆ„νˆ¬μ—μ„œ anaconda2둜 tensorflowλ₯Ό λ¨Όμ € μ„€μΉ˜ν–ˆμŠ΅λ‹ˆλ‹€(버전 2 λ˜λŠ” 3은 영ν–₯을 λ―ΈμΉ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€).
2. darkflow에 ν•„μš”ν•œ μ„€μΉ˜ ν™˜κ²½μ€ Python3 μ΄λ―€λ‘œ anaconda2의 Python2λ₯Ό python3.5둜 μ—…κ·Έλ ˆμ΄λ“œ ν•©λ‹ˆλ‹€. Ubuntu μ‹œμŠ€ν…œμ—λŠ” python2.7이 기본으둜 μ œκ³΅λ©λ‹ˆλ‹€. darkflow μ‚¬μš© μ‹œ source activate py35λ₯Ό μ‚¬μš©ν•˜μ—¬ Python3.5 ν™˜κ²½μ— μ§„μž…ν•˜μ—¬ μ‚¬μš©ν•©λ‹ˆλ‹€. 흐름 λͺ…령이 μˆ˜ν–‰ν•©λ‹ˆλ‹€.
3. λ‹€μŒμœΌλ‘œ darkflowλ₯Ό μ•„λ¬΄λ°λ‚˜ μ„€μΉ˜ν•  수 μžˆμ§€λ§Œ py35 ν™˜κ²½μ— μ„€μΉ˜ν•΄μ•Ό ν•˜λ©° Python ν™˜κ²½ μ†ŒμŠ€λ‘œ λ³€κ²½ν•˜μ—¬ py35λ₯Ό ν™œμ„±ν™”ν•œ λ‹€μŒ μ„€μΉ˜ν•˜λ©΄ darkflow 폴더가 ν‘œμ‹œλ©λ‹ˆλ‹€. 이 ν΄λ”λŠ” μ„€μΉ˜μ—μ„œ μ“Έλͺ¨κ°€ μ—†μŠ΅λ‹ˆλ‹€. of darkflow 그것은 μžλ™μœΌλ‘œ aaconda2/envs/py34/lib/python3.5/site-packages/darkflow/utils에 λ³΅μ‚¬λ©λ‹ˆλ‹€. 변경은 μœ„ λ””λ ‰ν† λ¦¬μ˜ λ‘œλ”μž…λ‹ˆλ‹€.py ν–‰ 121, self.offset = 16을 self.offset = 20으둜 λ³€κ²½

였, μ˜ˆμˆ˜λ‹˜!
λ‚΄κ°€ μ—¬κΈ°μ—μ„œ 무엇을 λ°œκ²¬ν–ˆλŠ”μ§€ 보러 μ˜€μ„Έμš”!
https://sites.google.com/view/tensorflow-example-java-api/complete-guide-to-train-yolo/convert-darknet-weights-to-pb-file

κ³ λ§ˆμ›Œμš”, 당신은 생λͺ…μ˜ μ€μΈμž…λ‹ˆλ‹€

@ideaRunner μ†”λ£¨μ…˜μ„ μ‹œλ„ μ˜€λ”λ‹ˆ μ œλŒ€λ‘œ μž‘λ™ν–ˆμŠ΅λ‹ˆλ‹€! @ideaRunner κ°μ‚¬ν•©λ‹ˆλ‹€! μŠ€ν¬λ¦°μƒ·μ„ μ²¨λΆ€ν•˜μ§€ λͺ»ν•΄ μ£„μ†‘ν•©λ‹ˆλ‹€. 문제λ₯Ό μž¬ν˜„ν•΄μ•Ό ν•©λ‹ˆλ‹€.
주의: λ””μŠ€ν”Œλ ˆμ΄μ— λ™μΌν•œ GPUλ₯Ό μ‚¬μš©ν•˜λŠ” 경우 0.8의 GPUλ₯Ό μ‚¬μš©ν•˜λŠ” 데 λ¬Έμ œκ°€ λ°œμƒν•  수 μžˆμœΌλ―€λ‘œ GPU μ‚¬μš©λŸ‰μ„ 0.7둜 μ€„μ΄λŠ” 것이 μ’‹μŠ΅λ‹ˆλ‹€. 그러면 μ œλŒ€λ‘œ μž‘λ™ν•©λ‹ˆλ‹€!

였, μ˜ˆμˆ˜λ‹˜!
λ‚΄κ°€ μ—¬κΈ°μ—μ„œ 무엇을 λ°œκ²¬ν–ˆλŠ”μ§€ 보러 μ˜€μ„Έμš”!
https://sites.google.com/view/tensorflow-example-java-api/complete-guide-to-train-yolo/convert-darknet-weights-to-pb-file

λ”°λΌμ„œ μ–Έμ  κ°€λŠ” λŠμ–΄μ§ˆ 수 μžˆλŠ” 링크둜 이동할 ν•„μš”κ°€ μ—†μŠ΅λ‹ˆλ‹€.

μ†”λ£¨μ…˜μ€ 맀우 κ°„λ‹¨ν•©λ‹ˆλ‹€. ./darkflow/utils/loader.py νŒŒμΌμ—μ„œ self.offset = 16 행을 μˆ˜μ •ν•˜κ³  self.offset = 20으둜 λ°”κΎΈκ² μŠ΅λ‹ˆλ‹€.

λ‚˜λ₯Ό μœ„ν•΄ 그것은 μž‘λ™ν•˜μ§€ μ•Šμ•˜λ‹€. κΈ°λŒ€μ™€ 발견의 차이가 많이 μ€„μ–΄λ“€μ—ˆμ§€λ§Œ

였, μ˜ˆμˆ˜λ‹˜!
λ‚΄κ°€ μ—¬κΈ°μ—μ„œ 무엇을 λ°œκ²¬ν–ˆλŠ”μ§€ 보러 μ˜€μ„Έμš”!
https://sites.google.com/view/tensorflow-example-java-api/complete-guide-to-train-yolo/convert-darknet-weights-to-pb-file

λ”°λΌμ„œ μ–Έμ  κ°€λŠ” λŠμ–΄μ§ˆ 수 μžˆλŠ” 링크둜 이동할 ν•„μš”κ°€ μ—†μŠ΅λ‹ˆλ‹€.

μ†”λ£¨μ…˜μ€ 맀우 κ°„λ‹¨ν•©λ‹ˆλ‹€. ./darkflow/utils/loader.py νŒŒμΌμ—μ„œ self.offset = 16 행을 μˆ˜μ •ν•˜κ³  self.offset = 20으둜 λ°”κΎΈκ² μŠ΅λ‹ˆλ‹€.

λ‚˜λ₯Ό μœ„ν•΄ 그것은 μž‘λ™ν•˜μ§€ μ•Šμ•˜λ‹€. κΈ°λŒ€μ™€ 발견의 차이가 많이 μ€„μ–΄λ“€μ—ˆμ§€λ§Œ

λ‚˜λŠ” 같은 λ¬Έμ œκ°€ μžˆμ—ˆμ§€λ§Œ μ˜¬λ°”λ₯Έ self.offset으둜 ν•΄κ²°ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

44948596λ°”μ΄νŠΈμΈ 경우 44948600을 μ°Ύμ•˜μŠ΅λ‹ˆλ‹€.

차이(44948600-44948596)κ°€ self.offset에 μΆ”κ°€λ˜μ–΄μ•Ό 함을 μ˜λ―Έν•©λ‹ˆλ‹€.

self.offset= self.offset + 4 차이 (44948600- 44948596 )

μ–Όκ΅΄ 손바λ‹₯ *
κ°μ‚¬ν•©λ‹ˆλ‹€ @shalin51

@shalin51 μƒˆ κ±·κΈ° κΈ°λŠ₯이 λ‹€μŒκ³Ό κ°™μ•„μ•Ό 함을 μ˜λ―Έν•©λ‹ˆκΉŒ?

def 도보(μžμ‹ , 크기):
self.of: λ°˜ν™˜ μ—†μŒ
end_point = self.offset + 4 * (44948600- 44948596 )
end_point <= self.size μ£Όμž₯, \
'초과 읽기{}'.format(self.path)

그러면 크기 λ§€κ°œλ³€μˆ˜λ₯Ό μ‚­μ œν•΄μ•Ό ν•©λ‹ˆκΉŒ?

λ‚΄ μ†”λ£¨μ…˜μ€ λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

  1. 핍 제거 λ‹€ν¬ν”Œλ‘œμš°
  2. ./darkflow/utils/loader.pyμ—μ„œ μ†ŒμŠ€ μ½”λ“œλ₯Ό λ³€κ²½ν•˜κ³  "assert λ¬Έ"을 μ‚­μ œν•˜κ±°λ‚˜ 경고둜 κ΅μ²΄ν•˜μ‹­μ‹œμ˜€.
  3. pip install -e . λ‹€μ‹œ μ„€μΉ˜

그것은 λ‚˜λ₯Ό μœ„ν•΄ μž‘λ™ν•©λ‹ˆλ‹€.

주의: cfg 파일과 weights 및 labels.txtκ°€ μ„œλ‘œ μΌμΉ˜ν•˜λŠ”μ§€ 확인해야 ν•©λ‹ˆλ‹€.

λ‚˜λŠ” 문제λ₯Ό ν•΄κ²°ν–ˆλ‹€.

http://tn00343140a.pixnet.net/blog/post/299895872-yolo%e9%81%8b%e8%a1%8cdarkflow%e6%99%82%2c-%e5%87%ba%e7%8f%beassertionerror %3a-expect-20392940

"loader.py" νŒŒμΌμ„ μ°Ύμ•„ "self.offset" 값을 λ³€κ²½ν•©λ‹ˆλ‹€.
μ—…λ°μ΄νŠΈλœ self.offset = old_offset_value + (found_value - expected_value)

저도 ν•΄κ²°ν–ˆμŠ΅λ‹ˆλ‹€.

~/darkflow/utilsμ—μ„œ self.offset 값을 '20' "loader.py"둜 λ³€κ²½ν•˜λŠ” μ€‘μž…λ‹ˆλ‹€.

μ™œ 이것이 μž‘λ™ν•˜λŠ”μ§€ λͺ¨λ₯΄κ² μŠ΅λ‹ˆλ‹€. ν•˜μ§€λ§Œ 일이야!

μœ„μ˜ μ§€μ •λœ λͺ¨λ“  방법을 μ‹œλ„ν–ˆμŠ΅λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ κ·Έκ²ƒμ˜ 아무것도 μž‘λ™ν•˜μ§€ μ•ŠλŠ” 것 κ°™μŠ΅λ‹ˆλ‹€!!

이 문제λ₯Ό ν•΄κ²°ν•  λ‹€λ₯Έ 방법이 μžˆμŠ΅λ‹ˆκΉŒ!!

였, μ˜ˆμˆ˜λ‹˜!
λ‚΄κ°€ μ—¬κΈ°μ—μ„œ 무엇을 λ°œκ²¬ν–ˆλŠ”μ§€ 보러 μ˜€μ„Έμš”!
https://sites.google.com/view/tensorflow-example-java-api/complete-guide-to-train-yolo/convert-darknet-weights-to-pb-file

μ†”μ§νžˆ μ–΄λ–»κ²Œ μž‘λ™ν•˜λŠ”μ§€ λͺ¨λ₯΄κ² μ§€λ§Œ λ‚΄ 문제λ₯Ό ν•΄κ²°ν–ˆμŠ΅λ‹ˆλ‹€. ν›Œλ₯­ν•©λ‹ˆλ‹€!!

diff --git a/darkflow/utils/loader.py b/darkflow/utils/loader.py
색인 723560d..e2fdaea 100644
--- a/darkflow/utils/loader.py
+++ b/darkflow/utils/loader.py
@@ -118,7 +118,8 @@ 클래슀 weights_walker(객체):
λͺ¨μ–‘ = (), λͺ¨λ“œ = 'r', μ˜€ν”„μ…‹ = 0,
dtype = '({})i4,'.ν˜•μ‹(4))
self.transpose = 메이저 > 1000 λ˜λŠ” λ§ˆμ΄λ„ˆ > 1000
- self.offset = 16
+ self.offset = 20

  def walk(self, size):
      if self.eof: return None
이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰