Seu problema é que quando você tem duas (ou mais)
store
linhas e duas (ou mais) pics
linhas para um único goods
linha, você acaba com o produto de todas as combinações de linhas. Para corrigir isso, faça sua agregação antes de ingressar:
SELECT
good.id,
good.title,
IFNULL(s.storerest, 0) AS storerest,
IFNULL(p.picscount, 0) AS picscount
FROM goods
LEFT JOIN (
SELECT goodid, sum(rest) AS storerest
FROM store
GROUP BY goodid
) s ON (goods.id = s.goodid)
LEFT JOIN (
SELECT goodid, count(id) AS picscount
FROM pics
GROUP BY goodid
) p ON (goods.id = p.goodid)