国产99精品在线观看-国产99久9在线视频-国产99久久-国产99久久精品-日本久久精品-日本久久精品视频

 

category.php?catid=379&areaid=10785&streetid=4677如何寫(xiě)偽靜態(tài)


來(lái)源: 【銘竟科技】  日期:2023-06-28 12:34:44  點(diǎn)擊:805  屬于:常見(jiàn)問(wèn)題
category.php?catid=379&areaid=10785&streetid=4677如何寫(xiě)偽靜態(tài)
詳細(xì)介紹:

tags:

篇首語(yǔ):主要介紹了category.php?catid=379&areaid=10785&streetid=4677如何寫(xiě)偽靜態(tài)相關(guān)的知識(shí),希望對(duì)你有一定的參考價(jià)值。

category.php?catid=379&areaid=10785&streetid=4677如何寫(xiě)偽靜態(tài)

 

 

樓主,如果你調(diào)用的是地區(qū),出來(lái)數(shù)字,那可能是用錯(cuò)了變量,調(diào)用出了地區(qū)id ,areaid。

地區(qū)有緩存,可以根據(jù)程序返回的id去調(diào)用緩存。

$AREA[$areaid][name]

areaid替換成你調(diào)用地區(qū)的變量

 

 

參考技術(shù)A

 

 

顯示地區(qū)名稱(chēng)用$AREA[$areaid][name]就行了.

或許程序中間$areaid變量有被重定義的情況.仔細(xì)檢查一下$areaid 是否

為正確期望值.可以echo $areaid;看一下.

 

 

參考技術(shù)B1、方法有開(kāi)啟rewrite干,正則表達(dá)匹配。這種用的應(yīng)該不多。

2、用框架路由實(shí)現(xiàn)。
laravel
$router->get('/category/catid/areaid/streetid', function()
return ""
);
3、不用框架
開(kāi)啟rewrite,所有訪問(wèn)都路由到一個(gè)php 上,比如index.php
RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L]
然后根據(jù)全局函數(shù),獲取訪問(wèn)路徑。
category/catid/379/areaid/10785/streetid/4677
$param=$_SERVER['REQUEST_URI']
然后根據(jù)“/”轉(zhuǎn)數(shù)組。
$param的值差不多這個(gè)樣子['category','catid','379','areaid','10785','streetid','4677']
然后設(shè)計(jì)算法,執(zhí)行category.php 。大多框架的路由 基本上也差不多這個(gè)思路。

 

完美解決錯(cuò)誤:in bbox2out catid = (clsid2catid[int(clsid)]) KeyError:

 

最近用了一下paddlepaddle深度學(xué)習(xí)框架訓(xùn)練了一下目標(biāo)檢測(cè)模型,然后在訓(xùn)練一段時(shí)候后在驗(yàn)證的時(shí)候出現(xiàn)了錯(cuò)誤:

File "...PaddleDetection-masterppdetutilscoco_.py", line 318, in bbox2out
    catid = (clsid2catid[int(clsid)])
KeyError: 6

小編是訓(xùn)練一個(gè)目標(biāo)檢測(cè)的模型, KeyError: 6 中的6是要檢測(cè)的類(lèi)別的數(shù)量(6個(gè)類(lèi)別)。

遇到這個(gè)錯(cuò)誤的時(shí)候,很多人可能要放棄了(這框架我不玩了

其實(shí)產(chǎn)生這個(gè)錯(cuò)誤的原因就是paddle在驗(yàn)證的時(shí)候沒(méi)有可慮到不同數(shù)據(jù)的問(wèn)題,也就是說(shuō)這個(gè)代碼在coco數(shù)據(jù)集上訓(xùn)練可能是完全沒(méi)有問(wèn)題,那么怎樣才能訓(xùn)練自己的數(shù)據(jù)呢?

首先找到報(bào)錯(cuò)的文件 File "...PaddleDetection-masterppdetutilscoco_.py",這個(gè)文件是目標(biāo)檢測(cè)文件的位置,每個(gè)人可能放置的位置不一樣,因人而異,找到你的文件夾的對(duì)應(yīng)的文件,即可。

然后小編找到了報(bào)錯(cuò)的位置,對(duì)報(bào)錯(cuò)的內(nèi)容進(jìn)行了輸出,發(fā)現(xiàn)是代碼的bug(不兼容),

報(bào)錯(cuò)的函數(shù):

def bbox2out(results, clsid2catid, is_bbox_normalized=False):
    """
    Args:
        results: request a dict, should include: `bbox`, `im_id`,
                 if is_bbox_normalized=True, also need `im_shape`.
        clsid2catid: class id to category id map of COCO2017 dataset.
        is_bbox_normalized: whether or not bbox is normalized.
    """
    
    xywh_res = []
    for t in results:
        bboxes = t['bbox'][0]
        if len(t['bbox'][1]) == 0: continue
        lengths = t['bbox'][1][0]
        im_ids = np.array(t['im_id'][0]).flatten()
        if bboxes.shape == (1, 1) or bboxes is None or len(bboxes) == 0:
            continue

        k = 0
        for i in range(len(lengths)):
            num = lengths[i]
            im_id = int(im_ids[i])
            for j in range(num):
                dt = bboxes[k]
                clsid, score, xmin, ymin, xmax, ymax = dt.tolist()
                if clsid < 0: continue
                
                catid = (clsid2catid[int(clsid)])

                if is_bbox_normalized:
                    xmin, ymin, xmax, ymax = 
                            clip_bbox([xmin, ymin, xmax, ymax])
                    w = xmax - xmin
                    h = ymax - ymin
                    im_shape = t['im_shape'][0][i].tolist()
                    im_height, im_width = int(im_shape[0]), int(im_shape[1])
                    xmin *= im_width
                    ymin *= im_height
                    w *= im_width
                    h *= im_height
                else:
                    # for yolov4
                    # w = xmax - xmin
                    # h = ymax - ymin
                    w = xmax - xmin + 1
                    h = ymax - ymin + 1

                bbox = [xmin, ymin, w, h]
                coco_res = {
                    'image_id': im_id,
                    'category_id': catid,
                    'bbox': bbox,
                    'score': score
                }
                xywh_res.append(coco_res)
                k += 1
    return xywh_res

我們看下函數(shù)的注釋?zhuān)f(shuō)明了是用于coco數(shù)據(jù)集,那么我們的假的coco數(shù)據(jù)集可能就不兼容

后來(lái)小編通過(guò)自己編寫(xiě)代碼完美修改了數(shù)據(jù)集標(biāo)注的格式,模型訓(xùn)練就不會(huì)再產(chǎn)生問(wèn)題了。

 

以上是關(guān)于category.php?catid=379&areaid=10785&streetid=4677如何寫(xiě)偽靜態(tài)的主要內(nèi)容,如果未能解決你的問(wèn)題,請(qǐng)參考以下文章

主站蜘蛛池模板: 雷山县| 东明县| 枣阳市| 湘潭县| 周口市| 青浦区| 石河子市| 金川县| 洛川县| 鞍山市| 新津县| 石柱| 闻喜县| 广汉市| 灵丘县| 德惠市| 苍溪县| 苏尼特左旗| 达州市| 道真| 冀州市| 长岛县| 德庆县| 固原市| 南开区| 含山县| 牙克石市| 文昌市| 云安县| 胶南市| 靖宇县| 阿尔山市| 九龙城区| 黔江区| 巴东县| 永济市| 威远县| 任丘市| 望奎县| 府谷县| 固原市|